import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; public class JSONParse { public static void main(String[] args) {
// String str="{'uid':10,'uname':'张三'}";
// System.out.println(stringToJSONObject(str)); //String 转JSONObject // HashMap<String, Object> map = new HashMap<String, Object>();
// map.put("uid", 11);
// map.put("uname", "张三");
// System.out.println(mapToJSONObject(map)); //map转JSONObject // User user=new User();
// user.setUid(12);
// user.setUname("张三");
// System.out.println(beanToJSONObject(user)); //Bean转JSONObject // JSONObject jo=stringToJSONObject(str);
// System.out.println(jSONObjectToString(jo)); //JSONObject转String // Map<String, Object> map=jSONObjectToMap(jo);
// System.out.println(map); //JSONObject转Map<Stirng,Object> // User u=jSONObjectToBean(jo);
// System.out.println(u); //JSONObject转Bean List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
Map<String, Object> map1 = new HashMap<String, Object>();
map.put("uid", 10);
map.put("uname", "张三");
map1.put("uid", 11);
map1.put("uname", "李四");
list.add(map);
list.add(map1);
// System.out.println(ListToJsonArray(list)); //List转JSONArray // String str=ListToJsonArray(list).toJSONString();
// System.out.println(stringToJsonArray(str)); //String转JSONArray JSONArray ja=ListToJsonArray(list);
// System.out.println(jsonArrayToString(ja));
System.out.println(jsonArrayToList(ja)); } /**
* 字符串转 JSONObject
* @param string
* @return JSONObject
*/
public static JSONObject stringToJSONObject(String str){
return JSONObject.parseObject(str);
} /**
* Map转 JSONObject
* @param string
* @return JSONObject
*/
public static JSONObject mapToJSONObject(Map<String, Object> map){
JSONObject jo=new JSONObject();
jo.putAll(map);
return jo;
} /**
* Bean转 JSONObject
* @param string
* @return JSONObject
*/
public static JSONObject beanToJSONObject(User user){
return (JSONObject) JSONObject.toJSON(user);
} /**
* JSONObject转字符串
* @param JSONObject
* @return string
*/
public static String jSONObjectToString(JSONObject jo){
return jo.toJSONString();
} /**
* JSONObject转Map
* @param JSONObject
* @return string
*/
public static Map<String, Object> jSONObjectToMap(JSONObject jo){
return JSONObject.toJavaObject(jo, Map.class);
} /**
* JSONObject转Bean
* @param JSONObject
* @return string
*/
public static User jSONObjectToBean(JSONObject jo){
return JSONObject.toJavaObject(jo, User.class);
} /**
* String转JSONArray
* @param String
* @return JSONArray
*/
public static JSONArray stringToJsonArray(String str){
return JSONArray.parseArray(str);
} /**
* list转JSONArray
* @param list
* @return JSONArray
*/
public static JSONArray ListToJsonArray(List<Map<String, Object>> list){
JSONArray ja=new JSONArray();
ja.addAll(list);
return ja;
} /**
* JSONArray转 String
* @param JSONArray
* @return String
*/
public static String jsonArrayToString(JSONArray ja){
return ja.toJSONString();
} /**
* JSONArray转 List
* @param JSONArray
* @return List<Map<String, Object>>
*/
public static List<Map<String, Object>> jsonArrayToList(JSONArray ja){
return JSONArray.toJavaObject(ja, List.class);
}
}

使用的JSON是:fastjson-1.2.3.jar

转载自:http://blog.csdn.net/liangwenmail/article/details/52432443

SONObjetc和String Map Bean互转,JSONArray和String List互转的更多相关文章

  1. JSONObject,JSONArray,String,Map间的互转

    引言      在平常的Web项目开发过程中,json和String.map是最常用的类型和返回结果集,其中也经常会涉及到之间的各种相互转换,下边就总结一下: 1.String转JSONObject ...

  2. Gson基本操作,JsonObject,JsonArray,String,JavaBean,List互转

    (转自)https://www.cnblogs.com/robbinluobo/p/7217387.html String.JsonObject.JavaBean 互相转换 User user = n ...

  3. 总结的一些json格式和对象/String/Map/List等的互转工具类

    总结的一些json格式和对象/String/Map/List等的互转工具类,有需要的可以看看,需要引入jackson-core-asl-1.7.1.jar.jackson-jaxrs-1.7.1.ja ...

  4. Spring mvc 报错:No qualifying bean of type [java.lang.String] found for dependency:

    具体错误: No qualifying bean of type [java.lang.String] found for dependency: expected at least 1 bean w ...

  5. Java基础知识强化之集合框架笔记59:Map集合之TreeMap(TreeMap<String,String>)的案例

    1. TreeMap类的概述: 键是红黑树结构,可以保证键的排序和唯一性. 2. TreeMap案例: TreeMap<String, String> 代码示例: package cn.i ...

  6. 字符串string和内存流MemoryStream及比特数组byte[]互转

    原文:字符串string和内存流MemoryStream及比特数组byte[]互转   字符串string和内存流MemoryStream及比特数组byte[]互转比较 定义string变量为str, ...

  7. expected number,sequence,or string.map evaluated instead of freemarker.template.smplehash

    expected number,sequence,or string.map evaluated instead of freemarker.template.smplehash 使用freemark ...

  8. Java8 LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转

    本文目前提供:LocalDateTime获取时间戳(毫秒/秒).LocalDateTime与String互转.Date与LocalDateTime互转 文中都使用的时区都是东8区,也就是北京时间.这是 ...

  9. Go语言网络通信---string与int互转,int64与[]byte互转,int直接互转,string与[]byte互转

    string与int互转 #string到int int,err:=strconv.Atoi(string) #string到int64 int64, err := strconv.ParseInt( ...

随机推荐

  1. phpstorm2018激活方法

    直接用浏览器打开 http://idea.lanyus.com/点击页面中的“获得注册码”,然后在注册时切换至Activation Code选项,输入获得的注册码一长串字符串如果提示红字体信息,那么先 ...

  2. ps | grep排除grep这个进程

    我们经常用ps | grep xxx来查询是否存在某进程,但默认情况下会将grep这个命令也作为结果返回,这样无论是否存在查询的进程,该命令的返回值都是0. 要避免这种情况可以使用grep的-v参数, ...

  3. 复旦大学2016--2017学年第二学期(16级)高等代数II期末考试第六大题解答

    六.(本题10分)  设 $A$ 为 $n$ 阶半正定实对称阵, $S$ 为 $n$ 阶实反对称阵, 满足 $AS+SA=0$. 证明: $|A+S|>0$ 的充要条件是 $r(A)+r(S)= ...

  4. CMD控制器常用命令

    dir 查看当前路径文件cd..返回上一级路径cd 转到指定的文件夹 \n 将光标移动到下一行的第一格 \t 将光标移动到下一个水平制表位置 mspaint 画图 编译源代码 javac HelloW ...

  5. bind封装

    原理:通过apply或者call方法来实现. (1)初始版本 Function.prototype.bind=function(obj,arg){ var arg=Array.prototype.sl ...

  6. sql添加一个list的查询条件

    编程中往往会有需要对某个list的值进行查询的需求,而将一个list作为查询条件,我所知道的有两种方法: 1.for循环遍历,每次循环一个sql,每次查list中一个条件的数据,最后累加 ...(最基 ...

  7. null与undefined的区别

    null和undefined是JavaScript五种基本数据类型中的两种. null是一个特殊值,但我们常常误解它,有时候我们会把它和另一个数据类型undefined的含义互相混淆. 首先我们来了解 ...

  8. Java 设计模式学习笔记1——策略模式(Duck例子)

    0.假设现有工程(Duck)中遇到为类添加功能的问题,如何设计类添加新的功能? 1.利用继承提供的Duck(鸭子)的行为会导致哪些缺点? (1)代码在多个子类中重复 (2)很多男知道所有鸭子的全部行为 ...

  9. React项目中使用HighCharts

    大家都知道BizCharts是基于react封装的一套图表工具,而HighCharts是基于jQuery的.但是由于本人对BizCharts甚是不熟,所以在react项目开发中选择了HighChart ...

  10. spring aop 中的JoinPoint

    AspectJ使用org.aspectj.lang.JoinPoint接口表示目标类连接点对象,如果是环绕增强时,使用org.aspectj.lang.ProceedingJoinPoint表示连接点 ...