Java与JSON之间的相互转换-3
来源:互联网 发布:知乎日本长寿 编辑:程序博客网 时间:2024/06/08 20:12
添加 jar 包支持
commons-beanutils-1.8.0.jarcommons-collections-3.1.jarcommons-lang-2.5.jarcommons-logging-1.1.1.jarezmorph-1.0.6.jarjson-lib-2.4-jdk15.jar
编写工具类
import java.util.List;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class JsonUtils { public static <T> T toObject(String data, Class<T> clazz) { return (T) JSONObject.toBean(JSONObject.fromObject(data), clazz); } public static String toJson(Object object) { return JSONObject.fromObject(object).toString(); } public static String toJsonByList(Object object) { return JSONArray.fromObject(object).toString(); } public static <T> List<T> toList(String data, Class<T> clazz) { return (List<T>) JSONArray.toCollection(JSONArray.fromObject(data), clazz); }}
测试代码
import java.util.ArrayList;import java.util.List;import model.Person;import org.junit.Test;import util.JsonUtils;public class JsonTest { /** * Object ---> JSON */ @Test public void testObjectToJson() { Person p = new Person(); p.setName("张三"); p.setAge("18"); p.setAddress("郑州"); String result = JsonUtils.toJson(p); System.out.println(result); } /** * JSON ---> Object */ @Test public void testJsonToObject() { String data = "{\"address\":\"郑州\",\"age\":\"18\",\"name\":\"张三\"}"; Person p = JsonUtils.toObject(data, Person.class); System.out.println(p); } /** * List ---> JSON */ @Test public void testListToJson() { Person p1 = new Person(); p1.setName("张三"); p1.setAge("18"); p1.setAddress("郑州"); Person p2 = new Person(); p2.setName("李四"); p2.setAge("20"); p2.setAddress("北京"); List<Person> list = new ArrayList<Person>(); list.add(p1); list.add(p2); String result = JsonUtils.toJsonByList(list); System.out.println(result); } /** * JSON ---> List */ @Test public void testJsonToList() { String data = "[{\"address\":\"郑州\",\"age\":\"18\",\"name\":\"张三\"},{\"address\":\"北京\",\"age\":\"20\",\"name\":\"李四\"}]"; List<Person> list = JsonUtils.toList(data, Person.class); for (Person person : list) { System.out.println(person); } }}
阅读全文
0 0
- Java与JSON之间的相互转换-3
- Java与JSON之间相互转换-1
- Java与JSON之间相互转换-2
- JSON与java对象之间的相互转换
- java对象与json对象之间的相互转换
- Java中Json字符串与对象之间的相互转换
- Java与JSON之间的相互转换-4
- 非标准json,标准json,json字符串与js对象,Java对象之间的相互转换
- 补充:json对象与json字符串之间的相互转换
- json对象与json字符串之间的相互转换
- JSON与java对象的相互转换
- JSON与JAVA数据的相互转换
- JSON与JAVA数据的相互转换
- JSON与JAVA数据的相互转换
- Java对象与Json的相互转换
- JSON与JAVA数据的相互转换
- JSON与JAVA数据的相互转换
- 利用Gson使json字符串与java bean/list/map之间的相互转换
- 接口
- bionic linker代码分析(1)
- linux文件目录分析之/etc目录
- Spark 重分区coalesce和repartition,合并小文件
- 笔记:linux检测软件包是否安装方法
- Java与JSON之间的相互转换-3
- android 使用RecyclerView ViewType创建不同的item
- [Java面试八]Hibernate总结以及在面试中的一些问题
- PHP分页
- 设计模式-java工厂模式2(抽象工厂模式)
- IT生涯, 我的常用软件清单
- 从内核角度剖析fork的执行过程(linux0.11)
- MySQL错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
- JavaWeb-018-中文处理