作为一个java开发程序员,前台与后台的交互式不可避免的,所有关于json的使用也是非常普遍的,最近先来没事大致翻阅了一下jsonObject和google的gson 的2个我经常用的转换json字符串的方式 发现两个用起来还真有些不同 有些误区,不仔细的developer可能会遇到一些问题,不多说先贴一段测试代码就能看出一些猫腻
/**
*
* @author lizh
* @date 2014-1-24下午3:41:59
* @fileName test.java
* @package com.jiuqi.mobile.nigo.comeclose.json
* @project comeclose
*/
public class test {
public static void main(String[] args) {
/**
* jsonObject
*/
Temp temp = new Temp();
temp.setName("我是赋值的变量");
JSONObject j = new JSONObject(temp);
System.out.println(j.toString());
/**
* google gson
*/
Gson g =new Gson();
System.out.println(g.toJson(temp));
}
}
class Temp{
private String name;
private String id;
public String getName() {
return "我是拿的get方法";
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
粉色的是jsonobject 红色的是json 输出的内容结果为
{"name":"我是拿的get方法","class":"com.jiuqi.mobile.nigo.comeclose.json.Temp"}
{"name":"我是赋值的变量"}
具体怎么回事 翻看源码便得知