gpt4 book ai didi

java - 将 Java 复杂对象转换为 Json

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:54 24 4
gpt4 key购买 nike

我需要转换以下类:

package comS309.traxz.data;

import java.util.Collection;

import org.json.JSONException;
import org.json.JSONObject;

public class ExerciseSession {

public String DateCreated;
public String TotalTime;
public String CaloriesBurned;
public String AvgSpeed;
public String SessionName;
public String Distance;
public String SessionType;
public String UserId;
public Collection<LatLon> LatLons;
}

其中LatLon如下:

public class LatLon {

public String LatLonId;
public String Latitude;
public String Longitude;
public String ExerciseSessionId;
public String LLAveSpeed;
public String Distance;
}

所以类 ExerciseSession 有一个 LatLon 对象的集合。现在我需要将 ExerciseSession 类从 java 转换为 Json 格式并将其发送到我的服务器。

如果重要的话,我正在 android 操作系统上执行此操作。

我目前的解决方案是这样的:

JSONObject ExerciseSessionJSOBJ = new JSONObject();
ExerciseSessionJSOBJ.put("DateCreated", this.DateCreated);
ExerciseSessionJSOBJ.put("TotalTime", this.TotalTime);
ExerciseSessionJSOBJ.put("CaloriesBurned", this.CaloriesBurned);
ExerciseSessionJSOBJ.put("AvgSpeed", this.AvgSpeed);
ExerciseSessionJSOBJ.put("SessionName", this.SessionName);
ExerciseSessionJSOBJ.put("Distance", this.Distance);
ExerciseSessionJSOBJ.put("SessionType", this.SessionType);
ExerciseSessionJSOBJ.put("UserId", this.UserId);
//add the collection
for(LatLon l: LatLons)
{
ExerciseSessionJSOBJ.accumulate("LatLons", l);
}

我不确定这是否有效。我是 Json 的新手,需要帮助。在此先感谢您的帮助!

最佳答案

使用 Google 的 GSON 库可以很容易地做到这一点。这是一个使用示例:

Gson gson = new Gson();
String jsonRepresentation = gson.toJson(myComplexObject);

并取回对象:

Gson gson = new Gson();
MyComplexObject myComplexObject = gson.fromJson(jsonRepresentation, MyComplexObject.class);

http://code.google.com/p/google-gson/

关于java - 将 Java 复杂对象转换为 Json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8331961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com