加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

将Java复杂对象转换为Json

发布时间:2020-12-15 02:50:54 所属栏目:Java 来源:网络整理
导读:我需要转换以下类: 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 CaloriesBur
我需要转换以下类:
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;
}

所以Class 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/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读