JSON和JAVA的POJO的相互转换【转载】
该类中用用到的jar包:参加文章《使用json-lib进行Java和JSON之间的转换【转载】》
import java.util.Collection;
import java.util.HashMap;
import java.util.Map; import net.sf.json.JSONArray;
import net.sf.json.JSONObject; /**
* JSON和JAVA的POJO的相互转换
*
* JSONHelper.java
*/
public final class JSONHelper { // 将数组转换成JSON
public static String array2json(Object object) {
JSONArray jsonArray = JSONArray.fromObject(object);
return jsonArray.toString();
} // 将JSON转换成数组,其中valueClz为数组中存放的对象的Class
public static Object json2Array(String json, Class valueClz) {
JSONArray jsonArray = JSONArray.fromObject(json);
return JSONArray.toArray(jsonArray, valueClz);
} // 将Collection转换成JSON
public static String collection2json(Object object) {
JSONArray jsonArray = JSONArray.fromObject(object);
return jsonArray.toString();
} // 将JSON转换成Collection,其中collectionClz为Collection具体子类的Class,
// valueClz为Collection中存放的对象的Class
public static Collection json2Collection(String json, Class collectionClz,
Class valueClz) {
JSONArray jsonArray = JSONArray.fromObject(json);
return JSONArray.toCollection(jsonArray, valueClz);
} // 将Map转换成JSON
public static String map2json(Object object) {
JSONObject jsonObject = JSONObject.fromObject(object);
return jsonObject.toString();
} // 将JSON转换成Map,其中valueClz为Map中value的Class,keyArray为Map的key
public static Map json2Map(Object[] keyArray, String json, Class valueClz) {
JSONObject jsonObject = JSONObject.fromObject(json);
Map classMap = new HashMap(); for (int i = 0; i < keyArray.length; i++) {
classMap.put(keyArray[i], valueClz);
} return (Map) JSONObject.toBean(jsonObject, Map.class, classMap);
} // 将POJO转换成JSON
public static String bean2json(Object object) {
JSONObject jsonObject = JSONObject.fromObject(object);
return jsonObject.toString();
} // 将JSON转换成POJO,其中beanClz为POJO的Class
public static Object json2Object(String json, Class beanClz) {
return JSONObject.toBean(JSONObject.fromObject(json), beanClz);
} // 将String转换成JSON
public static String string2json(String key, String value) {
JSONObject object = new JSONObject();
object.put(key, value);
return object.toString();
} // 将JSON转换成String
public static String json2String(String json, String key) {
JSONObject jsonObject = JSONObject.fromObject(json);
return jsonObject.get(key).toString();
} }
JSON和JAVA的POJO的相互转换【转载】的更多相关文章
- JAVA里面json和java对象之间的相互转换
1. 把java 对象列表转换为json对象数组,并转为字符串 JSONArray array = JSONArray.fromObject(list); String jsonstr = ar ...
- JSON 与JAVA对象之间的转换(转)
JSON与XML两者目前在数据交互方面都有很高的使用率,随着现在SOA的兴起,异构系统的整合地位相应提高,本篇文章主要介绍JSON与JAVA对象之间的相互转换. 一.对普通类型的JSON模式的转换 一 ...
- 转载:JSONObject.fromObject(map)(JSON与JAVA数据的转换)
转载网址:http://blog.sina.com.cn/s/blog_821025b70100wh6v.html JSON与JAVA数据的转换(JSON 即 JavaScript Object Na ...
- json学习系列(8)JSON与JAVA数据的相互转换实例
一.完整案例 先定义一个java实体对象,如下: package com.pcitc.json.cnblog; /** * SimInfo实体对象 * * @Description * @author ...
- JSON与JAVA数据的相互转换
http://www.cnblogs.com/linjiqin/archive/2011/09/19/2181408.html import net.sf.json.JSONArray; import ...
- JSONObject.fromObject(map)(JSON与JAVA数据的转换)
JSON与JAVA数据的转换(JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.) 上一篇文章中有这么 ...
- Json for Java API学习
首先声明:本文来个非常多网友的博客,我通过參考了他们的博客,大致的了解了一些项目中经常使用的Json in java 类和方法,以及关于json的个人理解 个人对json的一些简单理解 在近期的学习中 ...
- Json与Java对象互转之Gson学习
Json与Java对象互转之Gson学习 请尊重他人的劳动成果.转载请注明出处:Json与Java对象互转之Gson学习 我曾在<XML,Object,Json转换之浅析Xstr ...
- Spring: 读取 .properties 文件地址,json转java对象,el使用java类方法相关 (十三)
1. 在Java中获取 .properties 文件的路径 (src/main/resources 下) ProjectName |---src/main/java |---src/main/reso ...
随机推荐
- app应用程序本地化--备用
一.简介 * 使用本地化功能,可以轻松地将应用程序翻译成多种语言,甚至可以翻译成同一语言的多种方言 * 如果要添加本地化功能,需要为每种支持的语言创建一个子目录,称为”本地化文件夹”,通常使用.lpr ...
- SDUT 2351 In Danger
点我看题目 题意 : 有n个兵想要自杀,所以他们决定围成一个圈,从1开始一直环到n,然后每第2个开始自杀,但是有一个兵不想死,所以让你编程求出最后一个应该死的人的位置,这样的话就剩他自己他可以不自杀了 ...
- 纯手工全删除域内最后一个EXCHANGE--How to Manually Uninstall Last Exchange 2010 Server from Organization
http://www.itbigbang.com/how-to-manually-uninstall-last-exchange-2010-server-from-organization/ 没办法, ...
- AQuery简介:jQuery for Android
jQuery的流行已经成为了事实,它极大地减少了执行异步任务和操作DOM所需要的代码数量.新项目AQuery想要为Android开发者提供同样的功能.为了向你展示Android Query能够够为用户 ...
- 【网络流24题】No. 17 运输问题 (费用流)
[题意] W 公司有 m 个仓库和 n 个零售商店.第 i 个仓库有ai 个单位的货物:第 j 个零售商店需要b j 个单位的货物. 货物供需平衡,即SIGMA(A)=SIGMA(B). 从第 i 个 ...
- DHTMLX 前端框架 建立你的一个应用程序教程(四)--添加一个工具条toolbar
工具条例子 样本如下: 这里我们使用的是dhtmlxToolbar 组件. 添加工具栏到布局中: 1.使用attachToolbar() 方法初始化页面 添加代码到index.html中 dhtmlx ...
- FFmpeg发送流媒体的命令(UDP,RTP,RTMP)
http://blog.csdn.net/leixiaohua1020/article/details/38283297
- C++使用http请求,亲测可用,VS2008编译运行通过
int CMyFunctionsDlg::request(char* hostname, char* api, char* parameters) { WSADATA WsaData; WSAStar ...
- Gdi+实用入门
大部分是参照其它资料,然后加以自己的理解,那是什么,总结.算不得什么教程.......汗,自己看着就行了..如果别人能看那就更好了. 首先下载GDI+文件包,一个动态链接库,使用GDI+就是调用那个动 ...
- 集合ArrayList双色球练一练(自己的方法,太麻烦)
namespace 集合__双色球练一练{ class Program { static void Main(string[] args) { / ...