`
843977358
  • 浏览: 242001 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

json的使用

    博客分类:
  • java
阅读更多

1、json格式字符串:

/** 操作成功 200 */
	public static final String RESULT_SUCCESS = "{\"code\":\"200\",\"message\":\"成功!\"}";

 2、解析json字符串:

 JSONObject object = JSONObject.fromObject(RESULT_SUCCESS);
 String code = object.getString("code");
 String message = object.getString("message");

 3、解析java对象为json字符串:

Entity entity = new Entity();
JSONObject params = JSONObject.fromObject(entity);

    对象解析后的结果和第一个例子的格式一样,为:{\"对象属性\":\"属性值\"}

解析对象时会遇到某几个对象属性并不像被解析,那么就需要过滤掉。

4、过滤对象属性:

 

JsonConfig config = new JsonConfig();// 建立过滤器
config.setIgnoreDefaultExcludes(false);// 设置默认忽略
config.setExcludes(Commons.NEED_FILTER_PROPERTIES);// 需要过滤的对象属性(不会返回给前台)

 

    Commons.NEED_FILTER_PROPERTIES为我定义的静态数组:

/** 需要过滤的对象属性 */
public static final String[] NEED_FILTER_PROPERTIES = new String[] {
	"companyProvinceName", "companyCityName", "createTime",
	"lastLoginTime", "userState", "loseType", "pageInfo" };

 

JSONObject params = JSONObject.fromObject(tPayUserDetail, config);// 注册过滤器并解析json
result = "{\"code\":\"200\",\"message\":\"成功!\",\"data\":\"" + params.toString() + "\"}";

    2015-6-10 7:44 更新, 昨天整理的时候没有注意, 其实上面那个是错误的, 

{\"code\":\"200\",\"message\":\"成功!\",\"data\":\"" + params.toString() + "\"}";

    这个比较不容易理解, 因为这个jon字符串怎么看它的格式都正确,似乎没有不妥之处, 但是,这只是按       照惯性思维理解的,如果我把这行代码转换一下:

       {\"code\":\"200\",\"message\":\"成功!\",\"data\":\""{"paramA":"a","paramB":"b"}"\"}

    注意标红部分,这段代码就是上面的params.toString()后的字符串,也是一个json格式的字符串,可能有      些人会觉得,json字符串中嵌套一层字符串也是可以的 啊!没错, 是可以的的, 但前提是你如何嵌套,       以   及嵌套的格式。我先把上面那行代码改一下:

       {\"code\":\"200\",\"message\":\"成功!\",\"data\":"{"paramA":"a","paramB":"b"}"}

    现在这个json格式的字符串才算正确的,你能看到哪儿改变了吗?要细看哦吐舌头

    粗略整理, 有不对的地方, 请各位雅正~!

    另外提供一个json校验格式化的工具:

    json校验格式化工具

 

 

2
0
分享到:
评论
3 楼 843977358 2015-06-10  
netwelfare 写道
关于json的内容,这里最全面: Json内容

确实不错哦
2 楼 netwelfare 2015-06-10  
这个json校验格式化的工具也不错: json校验工具
1 楼 netwelfare 2015-06-10  
关于json的内容,这里最全面: Json内容

相关推荐

Global site tag (gtag.js) - Google Analytics