- 浏览: 816505 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (363)
- 2010年3月 (3)
- 2010年4月 (3)
- Java (116)
- ExtJs (22)
- EJB3.0 (11)
- JQuery (28)
- SqlServer (5)
- Oracle (17)
- hibernate (21)
- struts2 (14)
- php (10)
- JavaScript (11)
- jbpm (6)
- spring (24)
- lucene (2)
- ibatis (7)
- C# (8)
- mysql (11)
- json (3)
- webservice (3)
- 设计模式 (1)
- jdbc (1)
- servlet (2)
- ice (6)
- 日常软件问题 (2)
- 生活 (2)
- iphone (1)
- rest (3)
- ruby (2)
- linux (13)
- quartz (1)
- poi (1)
- redis (13)
- memcached (4)
- nosql (2)
- tomcat调优 (1)
- 项目管理 (0)
最新评论
-
天使建站:
jquery里和数组相关的操作 附带具体的实例 ...
jquery对象数组 -
Cy0941:
$('#formId').form('submit',...) ...
easyui的form表单提交处理 -
shmily2038:
swifth 写道楼主,,你的命令写错啦,,[root@ser ...
centos直接yum安装nginx -
swifth:
楼主,,你的命令写错啦,,[root@server ~]# y ...
centos直接yum安装nginx -
随遇而安DXX:
...
REST
json-lib demo
JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。
到http://json-lib.sourceforge.net下载json-lib-1.1-jdk15.jar,运行json还需要的包有:
jakarta commons-lang 2.4.jar
jakarta commons-beanutils 1.7.0.jar
jakarta commons-collections 3.2.jar
jakarta commons-logging 1.1.1.jar
ezmorph 1.0.6.jar
可在http://www.docjar.com上搜索下载。
1. 将java数组和java集合转化成一个json数组
通过静态工厂方法JSONArray.fromObject()将一个java数组或集合转化成一个json数组对象JSONArray.
实例1:转化java数组
Java代码
String [] array = {"a","d","1","b"};
JSONArray jsonArray = JSONArray.fromObject(array);
System.out.println(jsonArray);
String [] array = {"a","d","1","b"};
JSONArray jsonArray = JSONArray.fromObject(array);
System.out.println(jsonArray); 输出结果:["a","d","1","b"]//注意他们的顺序与java数组中的顺序是一致的。
实例2:转化List对象
Java代码
String [] array = {"d","a","1","b"};
List list = new ArrayList();
list.add( array );
list.add( "second element");
JSONArray jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray);
String [] array = {"d","a","1","b"};
List list = new ArrayList();
list.add( array );
list.add( "second element");
JSONArray jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray); 输出结果:[["d","a","1","b"],"second element"]
实例3:转化字符串
Java代码
String test = "['json','is','easy']";
JSONArray jsonArray = JSONArray.fromObject( test );
System.out.println(jsonArray);
String test = "['json','is','easy']";
JSONArray jsonArray = JSONArray.fromObject( test );
System.out.println(jsonArray);
使用JSONArray.fromObject()转化字符串时,字符串必须符合JSONArray的格式。
2.将Map或javaBean转化成JSONObject
实例4:转化Map
Java代码
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);
System.out.println(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);
System.out.println(json); 输出:[“name”: “json”, “bool”:true, “int”,1, “arr”:[ “a”, “b”], “func”:function(i){return this.arr[i];}]
实例5:转化javaBean
Java代码
public class TestBean {
private String id;
private String name;
private int age;
private String email;
public TestBean() {
}
public TestBean(String id, String name, int age, String email) {
super();
this.id = id;
this.name = name;
this.age = age;
this.email = email;
}
//以下为get、set方法
}
public class TestBean {
private String id;
private String name;
private int age;
private String email;
public TestBean() {
}
public TestBean(String id, String name, int age, String email) {
super();
this.id = id;
this.name = name;
this.age = age;
this.email = email;
}
//以下为get、set方法
} 输出:{"age":36,"email":"","id":"2","name":"xxhh"}
//这是一个json object,其实就是一个javascript对象。注意其中属性的顺序,是排过序的。
3.将JSONObject转化为javaBean对象
实例6:
Java代码
String myJson = "{'age':36,'email':'','id':'2','name':'testName'}";
JSONObject jsonObject1 = JSONObject.fromObject( myJson );
TestBean bean = (TestBean) JSONObject.toBean( jsonObject1, TestBean.class );
System.out.println("beanName:" + bean.getName());
String myJson = "{'age':36,'email':'','id':'2','name':'testName'}";
JSONObject jsonObject1 = JSONObject.fromObject( myJson );
TestBean bean = (TestBean) JSONObject.toBean( jsonObject1, TestBean.class );
System.out.println("beanName:" + bean.getName()); 输出:beanName:testName
4.通过 Servlet 或 MVC 框架输出 JSON 时,需要设置正确的 MIME 类型(application/json)和字符编码。假定服务器使用 UTF-8 编码,则可以使用以下代码输出编码后的 JSON 文本:
Java代码
response.setContentType("application/json;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.print(jsonObject);
out.flush();
out.close();
response.setContentType("application/json;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.print(jsonObject);
out.flush();
out.close(); 5.在前台处理jsonobject:
Js代码
var json = {"customerGroupList":
[{"id":{"customerGroupId":1,"languageId":1},"lastModified":null,"name":"medium level","priceId":1},
{"id":{"customerGroupId":2,"languageId":1},"lastModified":null,"name":"medium level2","priceId":1},
{"id":{"customerGroupId":3,"languageId":1},"lastModified":null,"name":"level3","priceId":1}],
"searchResultList":[{"custAddress":"1 Way Street,NeverNever,,PostCode1","custFirstName":"Andy","custLastLogon":"19/01/2010","custLastName":"Admin","custlogons":25},
{"custAddress":"3 Way Street,NeverNever,,PostCode3","custFirstName":"Olly","custLastLogon":"18/12/2009","custLastName":"Order","custlogons":0},
{"custAddress":"1 Way Street,NeverNever,,12345","custFirstName":"John","custLastLogon":"18/12/2009","custLastName":"Doe","custlogons":0},
{"custAddress":"2 Way Street,NeverNever,,PostCode2","custFirstName":"Caty","custLastLogon":"18/12/2009","custLastName":"Catalog","custlogons":0}]};
var json = {"customerGroupList":
[{"id":{"customerGroupId":1,"languageId":1},"lastModified":null,"name":"medium level","priceId":1},
{"id":{"customerGroupId":2,"languageId":1},"lastModified":null,"name":"medium level2","priceId":1},
{"id":{"customerGroupId":3,"languageId":1},"lastModified":null,"name":"level3","priceId":1}],
"searchResultList":[{"custAddress":"1 Way Street,NeverNever,,PostCode1","custFirstName":"Andy","custLastLogon":"19/01/2010","custLastName":"Admin","custlogons":25},
{"custAddress":"3 Way Street,NeverNever,,PostCode3","custFirstName":"Olly","custLastLogon":"18/12/2009","custLastName":"Order","custlogons":0},
{"custAddress":"1 Way Street,NeverNever,,12345","custFirstName":"John","custLastLogon":"18/12/2009","custLastName":"Doe","custlogons":0},
{"custAddress":"2 Way Street,NeverNever,,PostCode2","custFirstName":"Caty","custLastLogon":"18/12/2009","custLastName":"Catalog","custlogons":0}]}; 这是一个非常复杂的jsonobject对象.在后台,它是将一个个CustomerGroup对象和CustomerSearchResult对象分别存入的ArrayList中,然后再以customerGroupList和searchResultList为key存入HashMap中,最后转化为jsonobject对象传递到前台.在前台进行处理时,你可以把它看成一个变通地js对象,然后使用属性访问来得到它对应的属性值.
如:
Js代码
//就可以得到一个js数组对象,即json对象的前面一部分.即用[]括隹的那个对象.
var custGroupList = json.customerGroupList;
//同样.它也是得到一个js数组对象
var array2 = json.searchResultList;
for(var i = 0 ; i < array2.length; i++){
//得到array中的每一个对象
var cust = array[i];
var result = "";
//得到每一个对象的属性及属性值,当然也可以使用Object.attributeName.这 种方式得到对象的属性值,根据个人喜好
for(var attrName in cust){
result = "attribute name = " + attrName + "and attribute value = " + cust[attrName];
}
}
JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。
到http://json-lib.sourceforge.net下载json-lib-1.1-jdk15.jar,运行json还需要的包有:
jakarta commons-lang 2.4.jar
jakarta commons-beanutils 1.7.0.jar
jakarta commons-collections 3.2.jar
jakarta commons-logging 1.1.1.jar
ezmorph 1.0.6.jar
可在http://www.docjar.com上搜索下载。
1. 将java数组和java集合转化成一个json数组
通过静态工厂方法JSONArray.fromObject()将一个java数组或集合转化成一个json数组对象JSONArray.
实例1:转化java数组
Java代码
String [] array = {"a","d","1","b"};
JSONArray jsonArray = JSONArray.fromObject(array);
System.out.println(jsonArray);
String [] array = {"a","d","1","b"};
JSONArray jsonArray = JSONArray.fromObject(array);
System.out.println(jsonArray); 输出结果:["a","d","1","b"]//注意他们的顺序与java数组中的顺序是一致的。
实例2:转化List对象
Java代码
String [] array = {"d","a","1","b"};
List list = new ArrayList();
list.add( array );
list.add( "second element");
JSONArray jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray);
String [] array = {"d","a","1","b"};
List list = new ArrayList();
list.add( array );
list.add( "second element");
JSONArray jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray); 输出结果:[["d","a","1","b"],"second element"]
实例3:转化字符串
Java代码
String test = "['json','is','easy']";
JSONArray jsonArray = JSONArray.fromObject( test );
System.out.println(jsonArray);
String test = "['json','is','easy']";
JSONArray jsonArray = JSONArray.fromObject( test );
System.out.println(jsonArray);
使用JSONArray.fromObject()转化字符串时,字符串必须符合JSONArray的格式。
2.将Map或javaBean转化成JSONObject
实例4:转化Map
Java代码
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);
System.out.println(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);
System.out.println(json); 输出:[“name”: “json”, “bool”:true, “int”,1, “arr”:[ “a”, “b”], “func”:function(i){return this.arr[i];}]
实例5:转化javaBean
Java代码
public class TestBean {
private String id;
private String name;
private int age;
private String email;
public TestBean() {
}
public TestBean(String id, String name, int age, String email) {
super();
this.id = id;
this.name = name;
this.age = age;
this.email = email;
}
//以下为get、set方法
}
public class TestBean {
private String id;
private String name;
private int age;
private String email;
public TestBean() {
}
public TestBean(String id, String name, int age, String email) {
super();
this.id = id;
this.name = name;
this.age = age;
this.email = email;
}
//以下为get、set方法
} 输出:{"age":36,"email":"","id":"2","name":"xxhh"}
//这是一个json object,其实就是一个javascript对象。注意其中属性的顺序,是排过序的。
3.将JSONObject转化为javaBean对象
实例6:
Java代码
String myJson = "{'age':36,'email':'','id':'2','name':'testName'}";
JSONObject jsonObject1 = JSONObject.fromObject( myJson );
TestBean bean = (TestBean) JSONObject.toBean( jsonObject1, TestBean.class );
System.out.println("beanName:" + bean.getName());
String myJson = "{'age':36,'email':'','id':'2','name':'testName'}";
JSONObject jsonObject1 = JSONObject.fromObject( myJson );
TestBean bean = (TestBean) JSONObject.toBean( jsonObject1, TestBean.class );
System.out.println("beanName:" + bean.getName()); 输出:beanName:testName
4.通过 Servlet 或 MVC 框架输出 JSON 时,需要设置正确的 MIME 类型(application/json)和字符编码。假定服务器使用 UTF-8 编码,则可以使用以下代码输出编码后的 JSON 文本:
Java代码
response.setContentType("application/json;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.print(jsonObject);
out.flush();
out.close();
response.setContentType("application/json;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.print(jsonObject);
out.flush();
out.close(); 5.在前台处理jsonobject:
Js代码
var json = {"customerGroupList":
[{"id":{"customerGroupId":1,"languageId":1},"lastModified":null,"name":"medium level","priceId":1},
{"id":{"customerGroupId":2,"languageId":1},"lastModified":null,"name":"medium level2","priceId":1},
{"id":{"customerGroupId":3,"languageId":1},"lastModified":null,"name":"level3","priceId":1}],
"searchResultList":[{"custAddress":"1 Way Street,NeverNever,,PostCode1","custFirstName":"Andy","custLastLogon":"19/01/2010","custLastName":"Admin","custlogons":25},
{"custAddress":"3 Way Street,NeverNever,,PostCode3","custFirstName":"Olly","custLastLogon":"18/12/2009","custLastName":"Order","custlogons":0},
{"custAddress":"1 Way Street,NeverNever,,12345","custFirstName":"John","custLastLogon":"18/12/2009","custLastName":"Doe","custlogons":0},
{"custAddress":"2 Way Street,NeverNever,,PostCode2","custFirstName":"Caty","custLastLogon":"18/12/2009","custLastName":"Catalog","custlogons":0}]};
var json = {"customerGroupList":
[{"id":{"customerGroupId":1,"languageId":1},"lastModified":null,"name":"medium level","priceId":1},
{"id":{"customerGroupId":2,"languageId":1},"lastModified":null,"name":"medium level2","priceId":1},
{"id":{"customerGroupId":3,"languageId":1},"lastModified":null,"name":"level3","priceId":1}],
"searchResultList":[{"custAddress":"1 Way Street,NeverNever,,PostCode1","custFirstName":"Andy","custLastLogon":"19/01/2010","custLastName":"Admin","custlogons":25},
{"custAddress":"3 Way Street,NeverNever,,PostCode3","custFirstName":"Olly","custLastLogon":"18/12/2009","custLastName":"Order","custlogons":0},
{"custAddress":"1 Way Street,NeverNever,,12345","custFirstName":"John","custLastLogon":"18/12/2009","custLastName":"Doe","custlogons":0},
{"custAddress":"2 Way Street,NeverNever,,PostCode2","custFirstName":"Caty","custLastLogon":"18/12/2009","custLastName":"Catalog","custlogons":0}]}; 这是一个非常复杂的jsonobject对象.在后台,它是将一个个CustomerGroup对象和CustomerSearchResult对象分别存入的ArrayList中,然后再以customerGroupList和searchResultList为key存入HashMap中,最后转化为jsonobject对象传递到前台.在前台进行处理时,你可以把它看成一个变通地js对象,然后使用属性访问来得到它对应的属性值.
如:
Js代码
//就可以得到一个js数组对象,即json对象的前面一部分.即用[]括隹的那个对象.
var custGroupList = json.customerGroupList;
//同样.它也是得到一个js数组对象
var array2 = json.searchResultList;
for(var i = 0 ; i < array2.length; i++){
//得到array中的每一个对象
var cust = array[i];
var result = "";
//得到每一个对象的属性及属性值,当然也可以使用Object.attributeName.这 种方式得到对象的属性值,根据个人喜好
for(var attrName in cust){
result = "attribute name = " + attrName + "and attribute value = " + cust[attrName];
}
}
发表评论
-
extjs和jquery各适用于什么场景
2013-01-23 09:49 2031比较点 extjs jquery 是 ... -
extjs和jquery各适用于什么场景
2013-01-21 11:14 13781.应该说粒度不同,extjs ... -
sqlite 数据类型 全面
2011-06-14 13:49 1247一般数据采用的固定的 ... -
extjs direct下载地址
2010-09-11 18:23 1105http://code.google.com/p/direct ... -
json返回数据,首先要做的事
2010-09-08 12:45 1099var json=eval("("+jso ... -
ExtJS 面向对象
2010-08-25 15:15 9751:支持命名空间 <script type=&qu ... -
ExtJS border 布局
2010-08-25 14:42 1946border(边界) 布局是指,把面板组件显示在 北 东 南 ... -
Ext.data-DataProxy/HttpProxy/MemoryProxy/ScriptTagProxy
2010-08-03 09:15 1140Ext.data-DataProxy/HttpProxy/Me ... -
extjs表单的提交
2010-06-24 17:01 12697//ExtJs 表单提交 form.getForm(). ... -
JSONLib解析json数组
2010-06-24 15:33 1689public class JsonHelper { /** ... -
Jsonlib
2010-06-24 13:13 1326使用JSON-LIB可以极大的简化JAVA对象转换成JSON对 ... -
以"对象"方式接收json数据.(解决乱码问题)
2010-06-24 10:36 5378客户端(传输数据无中文): Java代码 //序号控件失去 ... -
extjs的xtype
2010-06-24 09:06 1268基本组件: xtype Class 描述 button E ... -
EXTJS 查询数据,分页显示时传送自定义参数,添加控件的任何事件模板
2010-06-21 13:25 2153EXTJS 查询数据,分页显示时传送自定义参数,添加控件的任何 ... -
Extjs 分页查询的参数问题
2010-06-21 12:57 2375先按条件查询数据,再点下一页保留住查询条件,解决方案是将查询参 ... -
EXT中grid分页实现的完整例子---从前台到后台
2010-05-25 00:14 13676// -------------------- 定义grid- ... -
ExtJs的el和contentEl的区别
2010-05-19 16:46 33951、把<div id="div_exam&qu ... -
Ext gird分页学习
2010-04-23 13:33 1028var store = new Ext.data.Store( ... -
SModel了解
2010-04-21 09:35 14571、比较 jsonlib,Xstream,gson,smode ... -
xstream实现JAVA对象和XML的相互转化
2010-04-20 21:56 2484首页 http://xstream.codehaus.org ...
相关推荐
json-lib 学习笔记 json-lib json
jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib需要jar包jsonlib...
json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码json lib最新源代码...
jsonlib.rar jsonlib.rar jsonlib.rar jsonlib.rar jsonlib.rar jsonlib.rar
jsonlib及其依赖jar包,它包括commons-beanutils.jar,commons-collections.jar,commons-lang.jar,commons-logging-1.2.jar, ezmorph-1.0.6.jar,json-lib-2.4-jdk15.jar,这些库可以满足转化Java对象到json的...
开发 json 所依赖的 jar 开发 json 所依赖的 jar
jsonlib包jsonlib包
完整json lib 2.4的jar包,包括: commons-beanutils-1.9.3.jar commons-collections-3.2.jar commons-lang-2.3.jar commons-logging-1.2.jar ezmorph-1.0.6.jar json-lib-2.4-jdk15.jar Java开发中对象转换...
json-lib-2.4-jdk15.jar下载,json-lib是一款简单易用的Java JSON库。它可以将Java对象转换成JSON字符串,也可以将JSON字符串转换成Java对象。json-lib体积小、无依赖,性能表现也不错,适合在各种Java项目中使用。 ...
JSON Lib.rar commons-beanutils-1.8.3.jar commons-collections-3.2.1.jar commons-lang-2.6.jar commons-logging-1.1.1.jar ezmorph-1.0.6.jar json-lib-2.4-jdk15.jar
json lib 2.2.1
服务器端 json lib包
json lib jdk15。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
springmvc_hibernate+json lib包
JSON-lib包json-lib-0.8.jar和json-lib-0.9.jar包
vs2017下编译好的json_lib.lib 包含64位,32位,头文件,请测可用
json解析工具,两个:分别是Gson和Jsonlib,用与对json解析
java中json所需要得jar包,包含commons-beanutils-1.8.0、commons-collections-3.2.1、commons-lang-2.6、commons-logging-1.1.1、ezmorph-1.0.6、json-lib-2.4-jdk15、xom-1.2.6
json一个jar 包 java 里面使用的一个JSON应用可以无线下载的别哈哈都不就卡的看吧据报道爱户外不都是 学技术点的那