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 ...
随机推荐
- 为什么很多语言选择在JVM上实现
非常经济地实现跨平台.你的语言编译器后端只需要输出 JVM 字节码就可以.跨平台需要极大的工作量,举个例子,只是独立开发生成本地代码,就需要花费大量精力去针对不同平台和处理器进行优化(比如 Firef ...
- .NET笔试题(关于迭代的:遍历XML中的FileName)
一.使用迭代算法,遍历XML文件中所有的文件名 写一个函数返回文件名集合 在主函数中调用该方法: 以后有关迭代的都写到这儿
- C# net部署图片分布式存储服务器的小案例
如果web服务用户多了,访问多了,用户上传的图片,文件等内容放在一块,想必服务器是承受不住的,这个时候,我们就需要考虑分布式存储的方法了. 如图所示:一个web服务器拖2个图片服务器 如何做到用户上传 ...
- C语言面向对象的简便方法
都知道C语言是面向过程的,但是现在软件规模越来越大,通过面向对象的方式可以简化开发.业余时间想了个简单的方法,在C中使用一部分面向对象的基本功能.由于C语言自身的限制,并不完善,只能将就用,聊胜于无, ...
- shutdown computer in ad and ou
1. powershell Shutdown-computer –computername (gc c:\temp\serverlist.txt) –force –throttlelimit 10 h ...
- BZOJ 1827: [Usaco2010 Mar]gather 奶牛大集会
Description Bessie正在计划一年一度的奶牛大集会,来自全国各地的奶牛将来参加这一次集会.当然,她会选择最方便的地点来举办这次集会.每个奶牛居住在 N(1<=N<=100,0 ...
- Stanford CoreNLP--功能列表
Standford CoreNLP包含很多功能,github上有源码,github地址:Stanford CoreNLP,有需要的话可以下载看看. 主要内容在网站上都有描述,原文是这样写的: Choo ...
- Cloud Insight 现在已经支持监控 Cassandra 啦!
Cassandra 是什么? Apache Cassandra 以其可扩展性和容错分布式数据库系统而被人所熟知.Cassandra 起源于Facebook 最初创建于 Amazon Dynamo 和谷 ...
- 【网络流24题】 No.15 汽车加油行驶问题 (分层图最短路i)
[题意] 问题描述:给定一个 N*N 的方形网格,设其左上角为起点◎, 坐标为( 1, 1), X 轴向右为正, Y轴向下为正, 每个方格边长为 1, 如图所示. 一辆汽车从起点◎出发驶向右下角终点▲ ...
- 【NOIP2015 DAY1 T3 】斗地主(landlords)
题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游戏.在斗地主中,牌的大小关系根据牌的数码表示如下:3<4< ...