`

json与java互换

    博客分类:
  • ajax
 
阅读更多

下载

 

json-lib依赖包:

  1. commons-beanutils-1.8.0.jar
  2. commons-collections-3.2.1.jar
  3. commons-lang-2.4.jar
  4. commons-logging-1.1.1.jar
  5. ezmorph-1.0.6.jar
  6. json-lib-2.3-jdk15.jar
  7. xom-1.2.2.jar

 

java转json

 

通常用可以用两个不同的类可以完成转换:JSONObject,JSONSerializer

 

 

public class Address {

private String street;// 街道

private String city;// 城市

private int zip;// 邮编

private String tel;// 第一个电话号码

private String telTwo;// 第二个电话号码

 

public Address() {

}

 

public Address(String street, String city, int zip, String tel,

String telTwo) {

this.street = street;

this.city = city;

this.zip = zip;

this.tel = tel;

this.telTwo = telTwo;

}

 

public String getStreet() {

return street;

}

 

public void setStreet(String street) {

this.street = street;

}

 

public String getCity() {

return city;

}

 

public void setCity(String city) {

this.city = city;

}

 

public int getZip() {

return zip;

}

 

public void setZip(int zip) {

this.zip = zip;

}

 

public String getTel() {

return tel;

}

 

public void setTel(String tel) {

this.tel = tel;

}

 

public String getTelTwo() {

return telTwo;

}

 

public void setTelTwo(String telTwo) {

this.telTwo = telTwo;

}

 

}

 

//处用JSONObject从java转换json

public class JSONObjectTest extends TestCase {

public void testDate2Json() {

JSONObject jsonObj = JSONObject.fromObject(new Date());

System.out.println(jsonObj.toString());

}

 

public void testArray2Json() {

JSONArray jarray = JSONArray.fromObject(new String[][] {

{ "one", "two" }, { "three", "four" } });

System.out.println(jarray.toString());

JSONArray arr = JSONArray.fromObject(jarray.toString());

System.out.println(((JSONArray) arr.get(1)).get(0));

}

 

public void testList2Json() {

List list = new ArrayList();

list.add(new Integer(1));

list.add(new Boolean(true));

list.add(new Character('j'));

list.add(new char[] { 'j', 's', 'o', 'n' });

list.add(null);

list.add("json");

list.add(new String[] { "json", "-", "lib" });

list.add(new JSONFunction(new String[] { "i" }, "alert(i)"));

list.add(new Address("P.O BOX 54534", "Seattle, WA", 42452,

"561-832-3180", "531-133-9098"));

JSONArray arr=JSONArray.fromObject(list);

System.out.println(arr.toString(4));

arr=JSONArray.fromObject(list);

System.out.println(((JSONArray)arr.get(6)).get(0));

System.out.println(((JSONObject)arr.get(8)).get("city"));

}

 

public void testMap2json(){

Mapmap=newLinkedHashMap();

map.put("integer",newInteger(1));

map.put("boolean",newBoolean(true));

map.put("char",newCharacter('j')); map.put("charArr",newchar[]{'j','s','o','n'});

JSONObjectobj=JSONObject.fromObject(map);

System.out.println(obj.get("integer");

}

 

 

public void testBean2Json(){

Addressbean=newAddress();

//设置bean的属性

JSONObject obj=JSONObject.fromObject(bean);

bean=(Bean) obj.toBean(obj, Bean.class);

System.out.println(bean);

}

 

}

 

//JSONObject 可以完成除了数组与Map的的转换,JSONArray可以完成数组,List,Set的转换。

 

 

 

}

 

//利用JSONSerialize 从java转换JSON

 

 

public class JSONSerializerTest extends TestCase {

public void testArraytoJson() {

String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}";

JSONObject obj = (JSONObject) JSONSerializer.toJSON(str);

System.out.println(obj.get("string"));

}

 

public void testMaptoJson() {

Map map = new HashMap();

map.put("string", "JSON");

map.put("integer", "1");

map.put("double", "2.0");

map.put("boolean", "true");

 

JSONObject obj = (JSONObject) JSONSerializer.toJSON(map);

System.out.println(obj.getString("string"));

System.out.println(obj.getInt("integer"));

}

 

public void testBeantoJson() {

 

MyJavaBean bean = new MyJavaBean();

bean.setString("JSON");

bean.setInteger(1);

bean.setDooble(2.0d);

bean.setBool(true);

JSONObject obj = (JSONObject) JSONSerializer.toJSON(bean);

System.out.println(obj.getString("string"));

}

public void testCollectiontoJsonArray(){

Object[] array = new Object[]{ "JSON", "1", "2.0", "true" };

JSONArray arr=(JSONArray) JSONSerializer.toJSON(array);

List list=new ArrayList();

list.add("JSON");

list.add("1");

JSONArray arr1=(JSONArray)JSONSerializer.toJSON(list);

System.out.println(arr.getString(0));

System.out.println(arr1.getString(0));

}

public void testbeantoJson(){

MyJavaBean bean = new MyJavaBean();

bean.setString( "JSON" );

bean.setInteger( 1 );

bean.setDooble( 2.0d );

bean.setBool( true );

JSONObject obj=(JSONObject) JSONSerializer.toJSON(bean);

System.out.println(obj.getString("bool"));

}

}

从json转换java主要用JSONSerializer

 

 

public class Json2java extends TestCase {

public void testJSONtoBean() {

MyJavaBean bean = new MyJavaBean();

bean.setString("JSON");

bean.setInteger(1);

bean.setDooble(2.0d);

bean.setBool(true);

JSONObject obj=(JSONObject) JSONSerializer.toJSON(bean);

JsonConfig conf=new JsonConfig();

conf.setRootClass(MyJavaBean.class);

MyJavaBean bean1=(MyJavaBean)JSONSerializer.toJava(obj,conf);

System.out.println(bean1.getDooble());

}

public void testjsontoList(){

List input = new ArrayList();

input.add( "JSON" );

input.add( "1" );

input.add( "2.0" );

input.add( "true" );

JSONArray obj=(JSONArray) JSONSerializer.toJSON(input);

List list=(List)JSONSerializer.toJava(obj);

System.out.println(list.get(0));

}

public void testjsontoarray(){

List input = new ArrayList();

input.add( "JSON" );

input.add( "1" );

input.add( "2.0" );

input.add( "true" );

JSONArray jsonarry=(JSONArray) JSONSerializer.toJSON(input);

JsonConfig conf=new JsonConfig();

conf.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);

Object[] list=(Object[])JSONSerializer.toJava(jsonarry,conf);

System.out.println(list[0]);

}

public void testjsontoMap(){

Map map = new HashMap();

map.put("string", "JSON");

map.put("integer", "1");

map.put("double", "2.0");

map.put("boolean", "true");

JSONObject obj=JSONObject.fromObject(map);

Map m=(Map)JSONObject.toBean(obj,Map.class);

System.out.println(m.get("string"));

}

}

 

分享到:
评论

相关推荐

    json与List-map互换和jar

    本文将详细介绍如何在Java中实现JSON与`List<Map>`以及`Map`之间的互换,以及如何打包成jar文件进行部署。 1. **Map转JSON** 要将一个`Map`对象转换为JSON格式,可以使用诸如`org.json`库或`com.google.gson`库。...

    不用第三方jar的json与object(map、list)互换java类

    本文将深入探讨如何在不依赖第三方库的情况下,实现JSON与Java对象(如Map、List)之间的互换。我们将分析标题提及的两个Java类——`jsonobject.java`和`JsonUtil.java`。 首先,`JsonUtil.java`很可能是这个功能的...

    JAVA中用到的json包

    2. **JSON数组与Java集合的互换** - JSON包还提供`JSONArray`类,用于处理JSON数组。你可以使用`JSONArray`将Java List或Array转换为JSON格式,也可以将JSON数组反序列化为Java集合。`JSONArray`类提供了`toArray()...

    java-json.jar.zip

    Java JSON.jar.zip是一个压缩包,其中包含了一个名为`java-json.jar`的Java库,这个库主要功能是处理XML和JSON之间的转换。XML(Extensible Markup Language)和JSON(JavaScript Object Notation)是两种广泛用于...

    JSON与java用到的对象包

    4. **序列化与反序列化**: josn-lib提供了解决Java对象和JSON之间的互换。例如,你可以将一个Java对象转换为JSON字符串,然后再将该字符串还原为Java对象: ```java // 序列化 ObjectMapper mapper = new ...

    Java对Json的一系列操作(构建、json与对象的转换)

    本文将深入探讨Java对JSON的一系列操作,包括如何构建JSON对象,以及如何进行JSON与Java对象之间的转换。 一、JSON对象构建 1. JSON基本类型:JSON主要包含两种基本类型,对象(Object)和数组(Array)。对象以大...

    JSON与JAVA数据的相互转换.pdf

    通过JSON库,如net.sf.json,我们可以方便地在Java对象和JSON字符串间进行互换,从而实现数据的序列化和反序列化。在处理复杂结构时,尤其是嵌套的对象和数组,需要特别注意类型转换和可能出现的类型匹配问题。

    java使用JSON

    6. **JSON与其他库的互操作性**:尽管我们主要使用了Gson库,但其他如Jackson、org.json等库也有类似的API。它们之间可以通过标准的JSON字符串进行互换。 总之,Java中使用JSON涉及的主要步骤包括解析JSON字符串、...

    Java 开发 json 数据的jar 涉及的相关包 Java_json_lib_2.4.zip

    5. **XML与JSON互换**: - JSON_lib还支持XML与JSON之间的转换,这对于那些需要在XML和JSON间切换的项目非常有用。 - 可以使用`XMLSerializer`类的`fromXML()`和`toXML()`方法进行转换。 6. **JSONPath表达式**:...

    java与json之间的互操作.pdf

    在Java开发中,JSON常用于数据传输和存储,因为它能够很好地与Java对象进行互换。JSON-lib是一个Java库,它提供了方便的API来处理JSON和XML之间的转换。 1. JSON-lib的功能: - 将Java对象转换为JSON格式的字符串...

    java json 所需的6个包

    - 与XML之间的转换,方便在不同数据格式间互换。 在实际开发中,选择哪个库主要取决于性能需求、易用性和项目兼容性。Fastjson以其高性能和简洁的API受到许多开发者的喜爱,而Json-lib则提供了更丰富的功能和对旧...

    JSON - JAVA 使用方法.docx

    此外,文件中提到了使用Nutz的JSON解析器,这是一个高效的Java库,可以方便地进行Java对象与JSON字符串的互换。例如: ```java // Java对象转JSON字符串 Map, Object> map = new HashMap(); map.put("name", "Peter...

    json封装的jar包

    2. **Gson**:Google开发的Gson库,它提供了`Gson`类来实现Java对象和JSON数据之间的互换。使用`Gson.toJson()`和`Gson.fromJson()`方法可以轻松完成转换。 3. **org.json**:这是一个轻量级的库,提供了`...

    java servlet json依赖包

    Java Servlet与JSON(JavaScript ...开发者可以根据项目需求选择合适的库来实现JSON与Java对象的互换,从而提升开发效率和代码质量。在实际使用中,这些依赖包可以很好地支持JSON在Java Servlet环境中的各种应用场景。

    xml 与json转换代码

    XML(Extensible Markup Language)和JSON(JavaScript Object Notation)是两种广泛用于数据交换的格式...了解如何使用XStream进行XML与JSON的互换,并编写相应的测试,对于任何处理数据交换的Java开发者都至关重要。

    java实现xmlToJson

    Java实现XML到JSON转换涉及到的是数据格式之间的互换,这对于数据交换、API接口设计和Web服务来说非常常见。XML(可扩展标记语言)是一种结构化数据格式,常用于存储和传输数据;而JSON(JavaScript Object Notation...

    java或android xml转json所需jar包

    总之,XML与JSON之间的转换是Java和Android开发中的常见任务。选择合适的jar包并正确引入,可以极大地简化开发工作,提高代码的可维护性和效率。在实际项目中,应根据具体需求和库的特性,选择最合适的XML到JSON转换...

    json-lib-2.4和相应的依赖包

    3. **XML和JSON之间的转换**:json-lib还支持XML与JSON之间的互换,这对于处理既有XML又有JSON的混合环境非常有用。 4. **支持多种Java类型**:json-lib支持包括基本类型、集合、数组、日期、自定义对象等多种Java...

    Gson to json

    本教程将详细介绍如何使用Gson库实现在Java和JSON之间的数据互换。 ### Gson库的引入 首先,你需要在你的项目中引入Gson库。如果你使用Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>...

    Java中JSON字符串与java对象的互换实例详解

    在Java中实现JSON字符串与Java对象互换的关键知识点包括以下几个方面: 1. 数据交换的必要性: 在Java开发中,经常需要与其他系统进行数据交互。常见的数据交换格式包括XML和JSON。与XML相比,JSON格式更轻量级,...

Global site tag (gtag.js) - Google Analytics