java对象与json对象间的相互转换
工程中所需的jar包,因为在网上不太好找,所以我将它放到我的网盘里了,如有需要随便下载。
1.简单的解析json字符串
- <pre></pre><span style="white-space:pre"></span>
- <pre></pre>
int num = jsonObject.getInt("num");
String sex = jsonObject.getString("sex");
int age = jsonObject.getInt("age");
2.将json字符串转换为java对象
3.将java对象转换为json字符串
- package baz.parse;
- import java.util.ArrayList;
- import java.util.List;
- import net.sf.json.JSON;
- import net.sf.json.JSONArray;
- import net.sf.json.JSONObject;
- import net.sf.json.JSONSerializer;
- import baz.bean.Person;
- public class ParseJson {
- private String jsonStr;
- public ParseJson() {
- }
- public ParseJson(String str){
- this.jsonStr = str;
- }
- /**
- * 解析json字符串
- */
- public void parse(){
- JSONObject jsonObject = JSONObject.fromObject(jsonStr);
- String name = jsonObject.getString("name");
- int num = jsonObject.getInt("num");
- String sex = jsonObject.getString("sex");
- int age = jsonObject.getInt("age");
- System.out.println(name + " " + num + " " + sex + " " + age);
- }
- //将json字符串转换为java对象
- public Person JSON2Object(){
- //接收{}对象,此处接收数组对象会有异常
- if(jsonStr.indexOf("[") != -){
- jsonStr = jsonStr.replace("[", "");
- }
- if(jsonStr.indexOf("]") != -){
- jsonStr = jsonStr.replace("]", "");
- }
- JSONObject obj = new JSONObject().fromObject(jsonStr);//将json字符串转换为json对象
- Person jb = (Person)JSONObject.toBean(obj,Person.class);//将建json对象转换为Person对象
- return jb;//返回一个Person对象
- }
- }
- package baz.bean;
- public class Person {
- private String name;
- private int num;
- private String sex;
- private int age;
- public Person() {
- // TODO Auto-generated constructor stub
- }
- public Person(String name, int num, String sex, int age) {
- super();
- this.name = name;
- this.num = num;
- this.sex = sex;
- this.age = age;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public int getNum() {
- return num;
- }
- public void setNum(int num) {
- this.num = num;
- }
- public String getSex() {
- return sex;
- }
- public void setSex(String sex) {
- this.sex = sex;
- }
- public int getAge() {
- return age;
- }
- public void setAge(int age) {
- this.age = age;
- }
- }
将java对象转换为json字符串
- package baz.cons;
- import net.sf.json.JSONObject;
- /**
- * 将java对象转换为json字符串
- * @author Administrator
- *
- */
- public class ConsJson {
- public ConsJson() {
- // TODO Auto-generated constructor stub
- }
- public String Object2Json(Object obj){
- JSONObject json = JSONObject.fromObject(obj);//将java对象转换为json对象
- String str = json.toString();//将json对象转换为字符串
- return str;
- }
- }
测试类:
- package baz.test;
- import java.util.List;
- import baz.bean.Person;
- import baz.cons.ConsJson;
- import baz.parse.ParseJson;
- public class Test {
- public static void main(String[] args) {
- //将字符串转换为json对象,然后根据建得到相应的值
- ParseJson pj = new ParseJson("{\"name\":\"gu\",\"num\":123456,\"sex\":\"male\",\"age\":24}");
- pj.parse();
- //将一个json字符串转换为java对象
- Person p = pj.JSON2Object();
- System.out.println("Name:" + p.getName());
- System.out.println("Num:" + p.getNum());
- System.out.println("Sex:" + p.getSex());
- System.out.println("age:" + p.getAge());
- //将一个java对象转换为Json字符串
- Person p1 = new Person("gu1",,"male",);
- ConsJson cj = new ConsJson();
- String str1 = cj.Object2Json(p1);
- System.out.println(str1);
- }
- }
测试输出如下:
gu 123456 male 24
Name:gu
Num:123456
Sex:male
age:24
{"age":23,"name":"gu1","num":123,"sex":"male"}
java对象与json对象间的相互转换的更多相关文章
- js 中 json对象 与 json字符串 间相互转换
在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键 JSON字符串: var str1 = '{ " ...
- java对象和json对象之间互相转换
import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;import java.util.Li ...
- java对象与json对象之间的转换
jar包:import net.sf.json.JSONObject; 1.解析json字符串 将json字符串转换为json对象,然后再解析json对象:.JSONObjectjsonObject ...
- JS中实现JSON对象和JSON字符串之间的相互转换
对于主流的浏览器(比如:firefox,chrome,opera,safari,ie8+),浏览器自己提供了JSON对象,其中的parse和stringify方法实现了JSON对象和JSON字符串之间 ...
- JavaScript对象、JSON对象、JSON字符串的区别
一.首先看下什么是JSON JSON:JavaScript Object Natation,JavaScript对象的表现形式,已经发展成一种轻量级的数据交换格式. JavaScript对象的表现形式 ...
- fastjson: json对象,json对象数组,javabean对象,json字符串之间的相互转化
fastjson: json对象,json对象数组,javabean对象,json字符串之间的相互转化 在开发过程中,经常需要和前端交互数据,数据交互的格式都是JSON,在此过程中免不了json字符串 ...
- 一种简单,轻量,灵活的C#对象转Json对象的方案(续)
本文参考资料 一种简单,轻量,灵活的C#对象转Json对象的方案 [源码]Literacy 快速反射读写对象属性,字段 一段废话 之前我已经介绍了这个方案的名称为JsonBuilder,这套方案最大的 ...
- js压缩xml字符串,将xml字符串转换为xml对象,将xml对象转换为json对象
/** * 压缩xml字符串 */ function compressXmlStr(str){ var prefix, suffix; var i = str.indexOf("\r&quo ...
- JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString
JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString 如下示例: 直接写的a1就是一个Json对象,a2 就是一个Json对象字符串; 通 ...
随机推荐
- C#基础知识系列二(值类型和引用类型、可空类型、堆和栈、装箱和拆箱)
前言 之前对几个没什么理解,只是简单的用过可空类型,也是知道怎么用,至于为什么,还真不太清楚,通过整理本文章学到了很多知识,也许对于以后的各种代码优化都有好处. 本文的重点就是:值类型直接存储其值,引 ...
- DOM(四)事件流
1.冒泡型事件 浏览器的事件模型分两种:捕获型事件和冒泡型事件.由于ie不支持捕获型事件,所以以下主要以冒泡型事件作为讲解.(dubbed bubbling)冒泡型指事件安装最特定的事件到最不特定的事 ...
- java日期加减
1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance(); calendar.setTime(new Date()) ...
- maven_项目的依赖、聚合、继承
一.假设目前有三个maven项目,分别是project.A.project.B.project.C 要求B依赖A.C依赖B但不依赖C 1.B添加对A的依赖 1 2 3 4 5 <depend ...
- 【poj1012】 Joseph
http://poj.org/problem?id=1012 (题目链接) 半年前的考试题..任然清晰的记得那次差10分就AK... 题意 约瑟夫环,有前k个好人,后k个坏人,要求使得后k个坏人先死的 ...
- BZOJ2301 莫比乌斯反演
题意:a<=x<=b,c<=y<=d,求满足gcd(x,y)=k的数对(x,y)的数量 ((x,y)和(y,x)不算同一个) 比hdu1695多加了个下界,还有 ...
- ubuntu设置开机启动图形应用程序,替换默认图形桌面
直接将启动程序放在rc.local即可.但是如果自动启动的程序奔溃后,会返回到ubuntu的unity桌面系统. 我遇到的问题是程序还有调用 xset 去定时关闭屏幕.在桌面启动后调用没问题.如果rc ...
- 文件系统:drbd主备服务器文件同步
一. DRBD介绍 DRBD是一种块设备,可以被用于高可用(HA)之中.它类似于一个网络RAID-1功能.当你将数据写入本地 文件系统时,数据还将会被发送到网络中另一台主机上.以相同的形式记录在一个文 ...
- 实现SVN与WEB同步解决方案(转)
实现SVN与WEB同步解决方案 1)设置WEB服务器根目录为/www/default 2)checkout一份SVN svn co svn://localhost/oplinux /www/defau ...
- oracle中Blob和Clob类型的区别
BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的.其实两个是可以互换的的,或者可以直接用LOB字段代替这两个.但是为了更好的管理ORACLE数据库,通常像图 ...