1.把Java对象转换成JSON对象

apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串。也可以把JavaBean转换成JSON字符串。

json-lib的核心jar包有: 

json-lib.jar,只有两个核心类: JSONObject, JSONArray;

json-lib的依赖jar包有:

commons-lang.jar

commons-beanutils.jar

commons-logging.jar

commons-collections.jar

ezmorph.jar

将person对象转化成json对象:

javabean:

package java转json;

public class Person {
private String name;
private int age;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Person() {
super();
// TODO Auto-generated constructor stub
}
public Person(String name, int age, String sex) {
super();
this.name = name;
this.age = age;
this.sex = sex;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + ", sex=" + sex + "]";
} }

用junit测试:

    @Test
public void fun() {
JSONObject jo = new JSONObject();
jo.put("name", "张三");
jo.put("age", 12);
jo.put("sex", "男");
String s = jo.toString();
System.out.println(s);
} @Test
public void fun1() {
Person p = new Person("liSi", 32, "female");
JSONObject jo = JSONObject.fromObject(p);// 把JavaBean对象转换成json
System.out.println(jo.toString());
}
// 结果为:{"age":32,"name":"liSi","sex":"female"} @Test
public void fun2() {
Person p = new Person("liSi", 32, "female");
Person p1 = new Person("zhangSan", 312, "female");
Person[] pe = { p, p1 };
JSONArray ja = JSONArray.fromObject(pe);// 把数组转换成JSONArray
System.out.println(ja.toString()); }
// 结果:[{"age":312,"name":"zhangSan","sex":"female"},{"age":32,"name":"liSi","sex":"female"}] @Test
public void fun3() {
Person p = new Person("liSi", 32, "female");
Person p1 = new Person("zhangSan", 312, "female");
List<Person> l = new ArrayList<Person>();
l.add(p1);
l.add(p);
System.out.println(JSONArray.fromObject(l).toString());// 把list转换成JSONArray
}
// 结果为:[{"age":312,"name":"zhangSan","sex":"female"},{"age":32,"name":"liSi","sex":"female"}]

2.把Java对象转换成xml对象

可以到http://xstream.codehaus.org/地址去下载XStream安装包!

XStream的必导JAR包:

核心JAR包:xstream-1.4.7.jar;

必须依赖包:xpp3_min-1.1.4c(XML Pull Parser,一款速度很快的XML解析器);

javabean对象仍然用person;

public List<Person> p() {
Person p1 = new Person("tian", 12, "男");
Person p2 = new Person("di", 14, "nv");
Person p3 = new Person("wo", 23, "a");
List<Person> l = new ArrayList<Person>();
l.add(p1);
l.add(p2);
l.add(p3);
return l;
} @Test
public void fun4() {
List<Person> l = p();
XStream xs = new XStream();// 创建XStream对象 调用toXML把集合转换成xml字符串
String s = xs.toXML(l);
System.out.println(s);
}
/*结果
<list>
<java转xml.Person>
<name>tian</name>
<age>12</age>
<sex>男</sex>
</java转xml.Person>
<java转xml.Person>
<name>di</name>
<age>14</age>
<sex>nv</sex>
</java转xml.Person>
<java转xml.Person>
<name>wo</name>
<age>23</age>
<sex>a</sex>
</java转xml.Person>
</list>
*/
@Test
public void fun2() {
List<Person> l = p();
XStream xs = new XStream();
xs.alias("value", List.class);// 给List起别名为china
xs.alias("person", Person.class);// 给person起别名为person
xs.useAttributeFor(Person.class, "name");// 把Person类型的name属性,生成<person>元素的属性
xs.omitField(Person.class, "age");// 让City类的,名为age属性不生成对应的xml元素
String s = xs.toXML(l);
System.out.println(s);
}
/*
* <value>
<person name="tian">
<sex>男</sex>
</person>
<person name="di">
<sex>nv</sex>
</person>
<person name="wo">
<sex>a</sex>
</person>
</value> */

Java对象转换成xml对象和Java对象转换成JSON对象的更多相关文章

  1. 类对象传输到jsp页面。需要转换为js的json对象时,这么做。

    场景:要从一个列表中选择信息,填写入父页面的表单中,但是字段非常多... 后台查询,得到结果,放在列表中. 效果:点击选择产品.. 弹出页面:点击后面的选择产品 选择产品后:信息自动填充.. 实现:点 ...

  2. java对象与json对象之间的转换

    jar包:import net.sf.json.JSONObject; 1.解析json字符串 将json字符串转换为json对象,然后再解析json对象:.JSONObjectjsonObject ...

  3. json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值

    一.json相关概念 json,全称为javascript object notation,是一种轻量级的数据交互格式.采用完全独立于语言的文本格式,是一种理想的数据交换格式. 同时,json是jav ...

  4. JSON对象和字符串的互相转换

    1.JSON.parse; 作用:将JavaScript对象表示法的JSON字符串转换为对象(字符串转对象) 语法:JSON.parse(text [, reviver]) text    必选. 一 ...

  5. 深入理解JSON对象

    × 目录 [1]语法规则 [2]stringify [3]parse[4]eval 前面的话 json(javascript object notation)全称是javascript对象表示法,它是 ...

  6. 利用JavaScriptSerializer类 进行Json对象的序列化和反序列化和过滤

    项目下载:JavaScriptSerializer_对JSON对象序列化与反序列化及过滤器 利用<JavascriptSerializer类> 进行Json对象的序列化和反序列化 1. 首 ...

  7. [转]json对象详解

    json(javascript object notation)全称是javascript对象表示法,它是一种数据交换的文本格式,而不是一种编程语言,用于读取结构化数据.2001年由Douglas C ...

  8. 原生JS:JSON对象详解

    JSON对象 支持到IE8,旧版的IE需要Polyfill 本文参考MDN做的详细整理,方便大家参考[MDN](https://developer.mozilla.org/zh-CN/docs/Web ...

  9. js如何创建JSON对象

    js如何创建JSON对象 一.总结 一句话总结:直接创建js数组和js对象即可,然后JSON.stringify就可以获取json字符串,js中的一切都是对象,而且js中的对象都是json对象 js ...

  10. 51. ExtJs4之Ext.util.JSON编码和解码JSON对象

    转自:https://blog.csdn.net/iteye_9439/article/details/82518158 1.decode() 该方法用于将符合JSON格式的String进行解码成为一 ...

随机推荐

  1. Vue.js优雅的实现列表清单

        一.Vue.js简要说明 Vue.js (读音 /vjuː/) 是一套构建用户界面的渐进式框架.与前端框架Angular一样, Vue.js在设计上采用MVVM模式,当View视图层发生变化时 ...

  2. javaScript额外笔记

    --------------------------------------------------------Part 1javascript:脚本语言辅助开发:网页的前台开发三大块:1.HTML ...

  3. ZedBoard开发板学习记录(一)之开发环境的搭建(Ubuntu16.04)以及运行HelloWorld程序的测试

    ZedBoard开发板由PL和PS两大部分组成, 对PS操作,一般有两个办法: (1).在Windows系统上面,使用SDK新建C Project SDK自带编译环境,编译后自动产生elf文件.使用U ...

  4. Python之多进程篇

    Process 创建子进程执行指定的函数 >>> from multiprocessing import Process,current_process >>> & ...

  5. springmvc之单元测试(MockMvc)-独立测试

    spring mvc测试框架提供了两种方式,独立安装和集成Web环境测试(此种方式并不会集成真正的web环境,而是通过相应的Mock API进行模拟测试,无须启动服务器) 1.mockMvc.perf ...

  6. C++对象模型之lambda表达式

    lambda表达式的求值-对象构造 本来想写“定义”,即“definition”,像函数定义一样,函数具体实现的代码实体即为实现,但是就像lambda既然被称为表达式,它确实有表达式那样“求值”的动作 ...

  7. powerdesigner 不能自动生成注释的解决方法

    解决power designer 不能自动生成注释的解决办法只需要3步: 一.快捷键 Alt+Shift+X 打开脚本编辑器: 二.将下面天蓝色的字体脚本添加到脚本编辑器里面: Option Expl ...

  8. Android studio导出配置

    在使用 Android Studio 时,往往会进行一些设置,比如 界面风格.字体.字体大小.快捷键.常用模板等.但是这里的设置只能用在一个版本的 Android Studio 上,如果下载了新的 A ...

  9. 实验:企业级分布式存储应用与实战-mogilefs实现

    实验:企业级分布式存储应用与实战-mogilefs实现 (1)安装mogilefs 1.创建一个存放安装mogilefs所需的软件包的目录 cd /app/ mkdir mogilefs cd mog ...

  10. 【原创】1、简单理解微信小程序

    先看下网站的运行方式: 而小程序是这样: what?就这样?是的,就这样.那小程序官方提供的Wafer,还有Wafer2...想太多了,抛弃它们吧.不应当为了解决一个简单的旧问题而去整一个复杂的新问题 ...