1. List集合转换成json代码

List list = new ArrayList();

list.add( "first" );

list.add( "second" );

JSONArrayjsonArray2 = JSONArray.fromObject( list );

2. Map集合转换成json代码

Map map = new HashMap();

map.put("name", "json");

map.put("bool", Boolean.TRUE);

map.put("int", new Integer(1));

map.put("arr", new String[] { "a", "b" });

map.put("func", "function(i){ return this.arr[i]; }");

JSONObject json = JSONObject.fromObject(map);

3. Bean转换成json代码

JSONObject jsonObject = JSONObject.fromObject(new JsonBean());

4.数组转换成json代码

boolean[] boolArray = new boolean[] { true, false, true };

JSONArray jsonArray1 = JSONArray.fromObject(boolArray);

5. 一般数据转换成json代码

JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']" );

实例代码:

public static void main(String[] args) {

Map map=new HashMap();

map.put("我","是");

map.put("好","孩");

map.put("子","呀");

JSONObject json = JSONObject.fromObject(map);

System.out.println(json); }

输出的結果 {"我":"是","好":"孩","子":"呀"}

toBean();

首先一个javabean对象

public class Student {

private int id ;

private String name;

private int age;

/*各属性的get和set方法*/

//重写toString方法

public String toString(){     //System.out时自动调用

return this.id + ", " + this.name + ", " + this.age; } }

然后测试toBean方法的类 import net.sf.json.JSONObject;

public class ToBeanTest {

public static void main(String[] args) {

String json = "{id:'1001',name:'张三',age:'22'}";

Student stu = new Student();

JSONObject obj = JSONObject.fromObject(json);

stu =

(Student)JSONObject.toBean(obj, Student.class);

System.out.println(stu); }

}

输出结果为1001, 张三, 22

二、 JSON 使用须要用的JAR包:

commons-lang.jar

commons-beanutils.jar

commons-collections.jar

commons-logging.jar

ezmorph.jar

json-lib-2.2.2-jdk15.jar

三 使用JSON中的JSONObject: 1.创建一个JSONObject对象,并使用put();方法添加元素: 首先我们创建一个User对象以备后用:

public class User {

private int id;

private String name;

private String pwd;

private String sex;

//get,set方法

@Override

//重写他的toString方法 public String toString() {

return this.name+"--"+this.pwd+"--"+this.sex;

}

}

例子如下:

import net.sf.json.JSONObject;

public class TestJson {

private static JSONObject json = null;

public static void main(String[] args) {

json = new JSONObject();

json.put("id","1");

json.put("name","张三");

json.put("pwd","123456");

System.out.println(json);

}

}

运行:

C:\java>java TestJson {"id":"1","name":"张三","pwd":"123456"}

通过这段代码我们就能很清淅的看到他的添加元素和map集合方式一样。

现在我们要将这个json对象放进一个JAVABEAN的User对象怎么弄呢?很简单

我们须要在 TestJson 类中的主方法中加入(放在System.out.println(json)这句话后面)

User user = new User();

//json.getString("id")就是通过他的KEY值取得对应的value值

user.setId(Integer.parseInt(json.getString("id")));

user.setName(json.getString("name"));

user.setPwd(json.getString("pwd"));

System.out.println(user);

这样我们就把json这个对象里的值放进user对象里面了。 运行:

C:\java>java TestJson {"id":"1","name":"张三","pwd":"123456"} 张三--123456--null

json添加元素除了用put();方法之外还可以用element();如:json.element("11", "222");

2.创建一个JSONArray对象,并添加元素:

JSONArray添加元素和list集合一样,当然取值也很像,代码如下

import net.sf.json.*;

public class TestJson1 {

private static JSONObject json = null;

private static JSONArray jsonArray = null;

public static void main(String[] args) {

jsonArray = new JSONArray ();

jsonArray.add(0, "张三");

jsonArray.add(1, "李四");

jsonArray.add(2, "王五");

jsonArray.add(3, "小三");

System.out.println(jsonArray);

System.out.println(jsonArray.get(1));

}

}

输出结果为: ["张三","李四","王五","小三"] 李四

注:json的基本格式这些网上很多,就不多说了,我们只须记住一句话就行了:[]表示数组,{}表示对象就完了!

1.从Object到String

要先用Object对象构造一个JSONObject或者JSONArray对象,然后调用它的toString()方法即可

(1)示例一

Book book=new Book();

book.setName("Java");

book.setPrice(52.3f);

JSONObject object=JSONObject.fromObject(book); System.out.println(object.toString());

(2)示例二

Book book=new Book();

book.setName("Java");

book.setPrice(52.3f);

Book book2=new Book();

book2.setName("C");

book2.setPrice(42.3f);

List list=new ArrayList();

list.add(book);

list.add(book2);

JSONArray arry=JSONArray.fromObject(list); System.out.println(arry.toString());

//结果如下:

[{"name":"Java","price":52.3},{"name":"C","price":42.3}]

2.从String到Object

要先用String对象构造一个JSONObject或者JSONArray对象

(1)示例一

String json="{name:'Java',price:52.3}";

JSONObject object=JSONObject.fromObject(json);

System.out.println(object.get("name")+" "+object.get("price"));

(2)示例二

String json="[{name:'Java',price:52.3},{name:'C',price:42.3}]"; JSONArray array=JSONArray.fromObject(json);

for(int i=0;i< array.size();i++){

Map o=(Map)array.get(i); System.out.println(o.get("name")+" "+o.get("price"));

}

3.从String到Bean

(1)单个Bean对象

String json="{name:'Java',price:52.3}";

JSONObject object=JSONObject.fromObject(json);

Product product=(Product)JSONObject.toBean(object,Product.class);

System.out.println(product.getName()+" "+product.getPrice());

(2).Bean的数组

String json="[{name:'Java',price:52.3},{name:'C',price:42.3}]";

JSONArray array=JSONArray.fromObject(json);

Product[] products=(Product[]) JSONArray.toArray(array,Product.class);

for(Product p:products){

System.out.println(p.getName()+" "+p.getPrice());

}

自定义封装JSON操作的类

package com.util;

import java.util.List;

import java.util.Map;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

public class JsonHelper {

//从普通的Bean转换为字符串 public static String getJson(Object o){

JSONObject jo=JSONObject.fromObject(o);

return jo.toString();

}

//从Java的列表转换为字符串

public static String getJson(List list){

JSONArray ja=JSONArray.fromObject(list);

return ja.toString();

}

//从Java对象数组转换为字符串

public static String getJson(Object[] arry){

JSONArray ja=JSONArray.fromObject(arry);

return ja.toString();

}

//从json格式的字符串转换为Map对象

public static Map getObject(String s){

return JSONObject.fromObject(s);

}

//从json格式的字符串转换为List数组

public static List getArray(String s){

return JSONArray.fromObject(s);

}

//从json格式的字符串转换为某个Bean

public static Object getObject(String s,Class cls){

JSONObject jo=JSONObject.fromObject(s);

return JSONObject.toBean(jo, cls);

}

//从json格式的字符串转换为某类对象的数组

public static Object getArray(String s,Class cls){

JSONArray ja=JSONArray.fromObject(s);

return JSONArray.toArray(ja, cls);

}

}

//json中包含数组(集合)

JSONObject o = json.getJSONObject("data");

Map classMap = new HashMap();

classMap.put("homeConsumHis", HomeConsumHis.class);

classMap.put("monthConsumes", MonthConsumes.class);

PersonReportBean bean = (PersonReportBean) JSONObject.toBean(o,

PersonReportBean.class, classMap);

--实体类

public class PersonReportBean {

private List homeConsumHis ;  // 家庭消费历史

private String name ;  // 姓名

private List monthConsumes ;  // 月消费

/*get set 方法*/

}

JSONArray jsonarray = json.getJSONArray("cardConfirms");//数组类型  "cardConfirms":[{"message":"0001","name":"吴周","card":"622658000850","result":"0"},{"message":"0001","name":"吴周","card":"623668200000065","result":"0"}]

List list = (List) JSONArray .toCollection(jsonarray, YinliankaYanzheng.class);

http://www.java3z.com/cwbwebhome/article/article20/200033.html?id=4858

json 转换 java odl_JSON与JAVA数据的转换相关推荐

  1. java byte 转 c_C 和 Java 之间的byte数据的转换问题

    C语言里通常可能开发人员直接定义struct 作为数据包, 因此在java客户端接收struct 中的数据时候,受整数等类型的高低位存放的影响, 需要进行相应的转换, 参考: 转换代码如下: pack ...

  2. badatatable转成json_数据表转换成json(DatatableToJson)

    #region 转换Table为JSON数据 /// /// 转换Table为JSON数据 /// /// /// public static string TableToJson(DataTable ...

  3. JAVA对象JSON数据互相转换的四种常见情况

    这篇文章主要介绍了JAVA对象JSON数据互相转换的四种常见情况,需要的朋友可以参考下 1. 把java 对象列表转换为json对象数组,并转为字符串 复制代码代码如下:     JSONArray ...

  4. SpringMVC中使用@RequestBody,@ResponseBody注解实现Java对象和XML/JSON数据自动转换)

    Spring3.1开始使用新的HandlerMapping 和 HandlerAdapter 来支持@Contoller 和@RequestMapping注解处理:处理器映射RequestMappin ...

  5. JSON与JAVA数据的转换

    JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean. 下载地址:http://json-lib.sourceforge.net ...

  6. java集合转js数值,基于jsTree的无限级树JSON数据的转换

    评论 # re: 基于jsTree的无限级树JSON数据的转换  回复  更多评论 exttree最好了!配合dwr ok 2009-05-05 22:50 | 大罗卜 # re: 基于jsTree的 ...

  7. java中map转为json数据_Java技术-将java中Map类型数据转化为json数据并以Ajax形式返回...

    Java技术-将java中Map类型数据转化为json数据并以Ajax形式返回html 1.自定义工具类(简单易用)-下面是我写的一个简单的工具类前端 package com.test.util; i ...

  8. java代码转置sql数据_SQL Server中的数据科学:数据分析和转换–使用SQL透视和转置

    java代码转置sql数据 In data science, understanding and preparing data is critical, such as the use of the ...

  9. [转]jackson json字符串、map、java对象的转换例子

    ackson框架 json字符串.map.java对象的转换例子 先下载框架jar包: 下面是一些例子: package jackson; import java.io.File; import ja ...

最新文章

  1. Android WiFi开发教程(三)——WiFi热点数据传输
  2. uwsgi模式_nginx+uwsgi 和nginx+gunicorn区别、如何部署
  3. Ubuntu 压缩解压汇总(自己常用+持续更新)
  4. iptables的增删改查
  5. java 链表中倒数第k个结点
  6. android黑窗口获取md5_Android获取文件的MD5
  7. Linux基础命令---apachectl
  8. 02数据结构与算法分析之---数据的两种结构
  9. javascript / jquery 操作 cookie
  10. 注意力机制BAM和CBAM详细解析(附代码)
  11. java swing 如何设置按钮大小_Java Swing - Button不改变宽度的大小
  12. django的模板系统过滤器笔记
  13. C++的STL标准库学习(deque)双向队列
  14. 批量删除2012年9月份以前的表
  15. 如何在MAC上使用VOSviewer和Pajek
  16. 遥感数据下载——土地利用(覆盖)数据下载
  17. verilog基础语法
  18. XMLHttpRequest 状态码:readyState、status
  19. matlab标定工具箱标定投影仪常见问题
  20. 码农、程序员、开发者

热门文章

  1. 6-4-JSP隐式对象
  2. php获取td数据,记一次用PHP做爬虫获取全市高考报考数据
  3. 阐述HTML语言的基本语法规则,HTML基本语法和语义写法规则与实例
  4. java输出hello word,教你如何配置java环境输出"hello word!"?
  5. 数独解题程序的python实现_python实现自动解数独小程序
  6. java synoch 加锁_线程间通信 - HappyCowboy - 博客园
  7. 教育类网页设计灵感|容易阅读,条理清晰!
  8. 中国风海报设计模板,东方韵味尽显
  9. 优秀案例快速提升UI设计界面的视觉效果、用户体验
  10. angular日期输入框html,html5 – Angular2:日期格式文本框ngModel不起作用