java gson转换成json_Gson将Java对象转换成Json字符串

首先创建两个Bean如下:

package com.kxw.test.bean;

import java.util.Date;

import java.util.List;

public class SendByUserIds {

private List userIds;

private String content;

private int messageType;

private Args args;

private Date expiredTime;

private String pwd;

private String groupId;

private String appName;

private String title;

private String titleColor;

private String bgColor;

private String contentColor;

private String bgPic;

public List getUserIds() {

return userIds;

}

public void setUserIds(List userIds) {

this.userIds = userIds;

}

public String getContent() {

return content;

}

public void setContent(String content) {

this.content = content;

}

public int getMessageType() {

return messageType;

}

public void setMessageType(int messageType) {

this.messageType = messageType;

}

public Args getArgs() {

return args;

}

public void setArgs(Args args) {

this.args = args;

}

public Date getExpiredTime() {

return expiredTime;

}

public void setExpiredTime(Date expiredTime) {

this.expiredTime = expiredTime;

}

public String getPwd() {

return pwd;

}

public void setPwd(String pwd) {

this.pwd = pwd;

}

public String getGroupId() {

return groupId;

}

public void setGroupId(String groupId) {

this.groupId = groupId;

}

public String getAppName() {

return appName;

}

public void setAppName(String appName) {

this.appName = appName;

}

public String getTitle() {

return title;

}

public void setTitle(String title) {

this.title = title;

}

public String getTitleColor() {

return titleColor;

}

public void setTitleColor(String titleColor) {

this.titleColor = titleColor;

}

public String getBgColor() {

return bgColor;

}

public void setBgColor(String bgColor) {

this.bgColor = bgColor;

}

public String getContentColor() {

return contentColor;

}

public void setContentColor(String contentColor) {

this.contentColor = contentColor;

}

public String getBgPic() {

return bgPic;

}

public void setBgPic(String bgPic) {

this.bgPic = bgPic;

}

}

package com.kxw.test.bean;

public class Args {

private int type;

private String value;

public int getType() {

return type;

}

public void setType(int type) {

this.type = type;

}

public String getValue() {

return value;

}

public void setValue(String value) {

this.value = value;

}

}

测试程序如下:

package com.kxw.test.kxwTest;

import java.util.ArrayList;

import java.util.Date;

import java.util.List;

import com.google.gson.Gson;

import com.google.gson.GsonBuilder;

import com.kxw.test.bean.Args;

import com.kxw.test.bean.SendByUserIds;

public class TestJson {

public static void main(String[] args) {

SendByUserIds sendByUserIds=new SendByUserIds();

List list=new ArrayList();

sendByUserIds.setUserIds(list);

Args args2=new Args();

sendByUserIds.setArgs(args2);

sendByUserIds.getUserIds().add("000676");

sendByUserIds.getUserIds().add("000643");

sendByUserIds.getUserIds().add("000653");

sendByUserIds.getUserIds().add("000876");

sendByUserIds.setAppName("Arsenal,Kaka',22,Kingson");

sendByUserIds.setContent("托雷斯");

sendByUserIds.setMessageType(2);

sendByUserIds.setTitle("切尔西");

sendByUserIds.setExpiredTime( new Date());

sendByUserIds.getArgs().setType(4);

sendByUserIds.getArgs().setValue("Messi");

//生成Gson对象,把对象及其属性对象转换为Json字符串,

Gson g = new GsonBuilder()

.setDateFormat("yyyy-MM-dd HH:mm:ss")

.create();

String jsonResult = g.toJson(sendByUserIds);

System.out.println(jsonResult);

}

}

结果:

{"userIds":["000676","000643","000653","000876"],"content":"托雷斯","messageType":2,"args":{"type":4,"value":"Messi"},"expiredTime":"2014-04-17 14:39:03","appName":"Arsenal,Kaka\u0027,22,Kingson","title":"切尔西"}

附:

http://blog.csdn.net/king87130/article/details/8009923

//生成Gson对象,把对象及其属性对象转换为Json字符串,

//解决子属性对象的无限递归问题,只转换我们用标签暴露的对象类型

Gson g = new GsonBuilder()

.excludeFieldsWithoutExposeAnnotation()

.serializeNulls()

.setDateFormat(DateFormat.LONG)

.setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)

.setPrettyPrinting()

.setVersion(1.0)

.create();

String jsonResult = g.toJson(sysUser.getPageResult());

System.out.println(jsonResult);

response.setContentType("application/json;charset=utf-8");

response.setHeader("Cache-Control", "no-cache");

PrintWriter out = response.getWriter();

out.print(jsonResult);

out.flush();

out.close();

0818b9ca8b590ca3270a3433284dd417.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值