Json-lib使用 转载
1.从Object到String
要先用Object对象构造一个JSONObject或者JSONArray对象,然后调用它的toString()方法即可
(1)示例一
1 Book book=new Book();
2 book.setName("Java");
3 book.setPrice(52.3f);
4 JSONObject object=JSONObject.fromObject(book);
5 System.out.println(object.toString());
(2)示例二

1 Book book=new Book();
2 book.setName("Java");
3 book.setPrice(52.3f);
4
5 Book book2=new Book();
6 book2.setName("C");
7 book2.setPrice(42.3f);
8 List list=new ArrayList();
9 list.add(book);
10 list.add(book2);
11 JSONArray arry=JSONArray.fromObject(list);
12 System.out.println(arry.toString());
13 //结果如下:
14 [{"name":"Java","price":52.3},{"name":"C","price":42.3}]

2.从String到Object
要先用String对象构造一个JSONObject或者JSONArray对象
(1)示例一
1 String json="{name:'Java',price:52.3}";
2 JSONObject object=JSONObject.fromObject(json);
3 System.out.println(object.get("name")+" "+object.get("price"));
(2)示例二
1 String json="[{name:'Java',price:52.3},{name:'C',price:42.3}]";
2 JSONArray array=JSONArray.fromObject(json);
3 for(int i=0;i<array.size();i++){
4 Map o=(Map)array.get(i);
5 System.out.println(o.get("name")+" "+o.get("price"));
6 }
3.从String到Bean
(1)单个Bean对象
1 String json="{name:'Java',price:52.3}";
2 JSONObject object=JSONObject.fromObject(json);
3 Product product=(Product)JSONObject.toBean(object,Product.class);
4 System.out.println(product.getName()+" "+product.getPrice());
(2).Bean的数组
1 String json="[{name:'Java',price:52.3},{name:'C',price:42.3}]";
2 JSONArray array=JSONArray.fromObject(json);
3 Product[] products=(Product[]) JSONArray.toArray(array,Product.class);
4 for(Product p:products){
5 System.out.println(p.getName()+" "+p.getPrice());
6 }
自定义封装JSON操作的类

1 package com.util;
2
3 import java.util.List;
4 import java.util.Map;
5
6 import net.sf.json.JSONArray;
7 import net.sf.json.JSONObject;
8
9 public class JsonHelper {
10 //从普通的Bean转换为字符串
11 public static String getJson(Object o){
12 JSONObject jo=JSONObject.fromObject(o);
13 return jo.toString();
14 }
15 //从Java的列表转换为字符串
16 public static String getJson(List list){
17 JSONArray ja=JSONArray.fromObject(list);
18 return ja.toString();
19 }
20 //从Java对象数组转换为字符串
21 public static String getJson(Object[] arry){
22 JSONArray ja=JSONArray.fromObject(arry);
23 return ja.toString();
24 }
25 //从json格式的字符串转换为Map对象
26 public static Map getObject(String s){
27 return JSONObject.fromObject(s);
28 }
29 //从json格式的字符串转换为List数组
30 public static List getArray(String s){
31 return JSONArray.fromObject(s);
32 }
33 //从json格式的字符串转换为某个Bean
34 public static Object getObject(String s,Class cls){
35 JSONObject jo=JSONObject.fromObject(s);
36 return JSONObject.toBean(jo, cls);
37 }
38 //从json格式的字符串转换为某类对象的数组
39 public static Object getArray(String s,Class cls){
40 JSONArray ja=JSONArray.fromObject(s);
41 return JSONArray.toArray(ja, cls);
42 }
43 }

Json-lib使用 转载的更多相关文章
- Atitit.json类库的设计与实现 ati json lib
Atitit.json类库的设计与实现 ati json lib 1. 目前jsonlib库可能有问题,可能版本冲突,抛出ex1 2. 解决之道:1 2.1. 自定义json解析库,使用多个复合的js ...
- Json lib集成stucts2的使用方法 抛出 NestableRuntimeException异常的解决办法
首先贴出struts 2.3.16需要导入的包 因为使用的是2.3 版本,必须要导入这个包,否则会报java.lang.NoClassDefFoundError: org/apache/commons ...
- 使用JsonConfig控制JSON lib序列化
将对象转换成字符串,是非常常用的功能,尤其在WEB应用中,使用 JSON lib 能够便捷地完成这项工作.JSON lib能够将Java对象转成json格式的字符串,也可以将Java对象转换成xml格 ...
- REST Adapter实现SAP PI中的增强XML/JSON格式转换(转载)
SAP标准的REST adapter有着XML/JSON转换的功能,它很有用,因为一方面SAP PI/PO内部以XML格式处理数据,而另一方面,在处理REST架构风格的时候,JSON才是事实上的格式. ...
- JSON.parse()和JSON.stringify()(转载)
parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":&qu ...
- Jackson学习二之集合类对象与JSON互相转化--转载
原文地址:http://lijingshou.iteye.com/blog/2003059 本篇主要演示如何使用Jackson对List, Map和数组与JSON互相转换. package com.j ...
- JSON lib 里JsonConfig详解
一,setCycleDetectionStrategy 防止自包含 /** * 这里测试如果含有自包含的时候需要CycleDetectionStrategy */ public static void ...
- JSON资料整理(转载)
目录 1.什么是json 2.json语法规则 3.json基础结构 4.json基础示例 5.JSON和XML比较 6. .NET操作JSON 原始方式 通用方式 内置方式 契约方式 通过序列化将. ...
- Fiddler抓包7-post请求(json)【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/fiddler/ 前言上一篇讲过get请求的参数都在url里,post的请求相对于get ...
- json lib 2.4及其依赖包下载
下载文件地址:https://files.cnblogs.com/files/xiandedanteng/json-lib-2.4%26dependencies_jars.rar 它包括 common ...
随机推荐
- SqlParameter
List<SqlParameter> parameters = new List<SqlParameter>(); SqlParameter param; foreach (. ...
- Linux环境变量的修改(永久,暂时)以及修改ls显示的时间格式
本文转自:http://blog.sina.com.cn/s/blog_8e21864f01014u9h.html Linux修改环境变量,很简单但很重要 一.Linux的变量种类 按变量的生存周期来 ...
- Hadoop集群管理之内存管理
1.内存 Hadoop为各个守护进程(namenode,secondarynamenode,jobtracker,datanode,tasktracker)统一分配的内存在hadoop-env.sh中 ...
- Android推送方案分析(MQTT/XMPP/GCM)
本文主旨在于,对目前Android平台上最主流的几种消息推送方案进行分析和对比,比较客观地反映出这些推送方案的优缺点,帮助大家选择最合适的实施方案. 方案1. 使用GCM服务(Google Cloud ...
- ACM学习之路————一个大整数与一个小整数不得不说得的秘密
这个相对于两个大整数的运算来说,只能说是,low爆了. 只要利用好除法的性质,这类题便迎刃而解.O(∩_∩)O哈哈~ //大整数除一个int数 #include<iostream> #in ...
- I'm Telling the Truth(二分图)
.I'm Telling the Truth Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Othe ...
- 验证码识别--type2
验证码识别--type2 终于来到了彩色图像,一定有一些特点 这里的干扰项是色彩不是很鲜艳的.灰色的线条,还有单独的干扰点,根据这些特性进行去除 直接ostu的话,有的效果好,有的效果不好 本来是 ...
- 2016年10月21日 星期五 --出埃及记 Exodus 19:5
2016年10月21日 星期五 --出埃及记 Exodus 19:5 Now if you obey me fully and keep my covenant, then out of all na ...
- ascii转int,int在转回ascii原值
String str = "; int ascii = (int)str; String asciiStr = char(ascii);
- 3.linux man手册
(12) man作用:查询man手册,获得帮助信息man 1 ls 1表示查询的是linux命令man 2 xxx 2表示查询的是linux apiman 3 xxx 3表示查询的是C库函数注意:在m ...