java实体类接收json对象,javaobject对象转换
施工所需的jar包在网上很少发现,所以我把它放在我的网盘里,根据需要自由下载了。
快速解析json字符串
要首先将json字符串转换为json对象,然后分析json对象,请执行以下操作:
jsonobjectjsonobject=JSON object.from object (JSON str;
从json的密钥中得到其值
string name=JSON object.getstring (' name );
intnum=JSONobject.getint('num );
stringsex=JSON object.getstring (sex );
intage=JSONobject.getint(age );
将json字符串转换为java对象
同样,将json字符串转换为json对象,然后将json对象转换为java对象,如下所示:
JSON对象obj=new JSON对象().fromobject(JSONstr );//将JSON字符串转换为JSON对象
将json对象转换为java对象
PersonJB=(Person ) Jsonobject.tobean ) obj,Person.class; 将json对象转换为人员对象
将java对象转换为json字符串
首先将java对象转换为json对象,然后在中将json对象转换为json字符串
jsonobjectjson=JSON object.from object (obj ); 将java对象转换为json对象
String str=json.toString (; 将json对象转换为字符串
完整的代码如下。
packagebaz.parse;
importjava.util.ArrayList;
importjava.util.List;
importnet.sf.json.JSON;
importnet.sf.json.JSONArray;
importnet.sf.json.JSONObject;
import net.SF.JSON.JSON serializer;
importbaz.bean.Person;
publicclassParseJson{
隐私保护jsonstr;
publicParseJson (
}
publicparsejson (字符串str ) {
this.jsonStr=str;
}
//*
分析json字符串
*/
公共语音透视(
jsonobjectjsonobject=JSON object.from object (JSON str );
string name=JSON object.getstring (' name );
Intnum=JSONobject.getint('num );
stringsex=JSON object.getstring (' sex );
intage=JSONobject.getint(age );
system.out.println (name ' ' num ' ' sex ' ' age;
}
将json字符串转换为java对象
publicpersonjson 2对象(
//{}接收对象。 如果在这里收到数组对象,就会有例外
if(Jsonstr.indexof('[']!=-1 ()
JSONstr=JSONstr.replace('[,'');
}
if(Jsonstr.indexof (' ) )!=-1 ()
JSONstr=JSONstr.replace (' )、'');
}
JSONObjectobj=newJSONObject ().fromobject ) (JSONstr );//将JSON字符串转换为JSON对象
PersonJB=(Person ) Jsonobject.tobean ) obj,Person.class; 将json对象转换为人员对象
返回JB; 返回人员对象
}
}
packagebaz.bean;
公共类人员{
隐私名称;
私密intnum;
私密性sex;
私有集成;
公共人员() }
//todo自动生成构造函数
}
公共人员(字符串名称、intnum、Stringsex、intage ) {
super (;
this.name=name;
this.num=num;
this.sex=sex;
this.age=age;
}
公共字符串getname
返回名称;
}
公共语音集名称(字符串名称) {
this.name=name;
}
publicintgetNum (
返回编号;
}
公共语音设置(intnum ) {
this.num=num;
}
公共字符串获取sex
返回性;
}
publicvoidsetsex(stringsex ) {
this.sex=sex;
}
publicintgetAge () }
返回age;
}
公共语音设置(intage ) {
this.age=age;
}
}
将java对象转换为json字符串
packagebaz.cons;
importnet.sf.json.JSONObject;
//*
将java对象转换为json字符串
* @ author管理员
*
*/
publicclassConsJson{
publicConsJson (
//todo自动生成构造函数
}
公共字符串对象2js on (objectobj ) {
jonobjectjson=JSON object.from object (obj ); 将java对象转换为json对象
Stringstr=json.toString (; 将json对象转换为字符串
返回str;
}
}
测试类:
packagebaz.test;
importjava.util.List;
importbaz.bean.Person;
importbaz.cons.ConsJson;
importbaz.parse.ParseJson;
公共类测试{
publicstaticvoidmain (字符串[ ] args ) {
//将字符串转换为json对象,并根据构建获得适当的值
parsejsonpj=newparsejson((((name () : ) )、() num )、(:123456、((sex () 3360 )、) male
pj.parse (;
将json字符串转换为java对象
personp=pj.JSON 2对象(;
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字符串
personP1=newPerson('Gu1 ',123,' male ',23 );
ConsJsoncj=newConsJson (;
stringstr1=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'}
这是最简单的使用方法,其他使用将在后期更新。
我只是个初学者,欢迎地面工作人员敲砖!