1、引导依赖
ependencygroupidcom.Alibaba/groupidartifactidfastjson/artifactidversion1.2. 47/version/dependency 2,创建POJO对象
公共类my user { private int id; 私有字符串用户名称; 私有字符串用户pwd; 私有字符串用户; 私有集成版; 私密日期创建时间; 私密日期更新时间; } 3、用测试方法初始化对象“老板”
我的用户my user1=new my user (; myuser1.setid(1; myuser1.setUsername ('老板); myuser1.setusersex('male ); myuser1.setuserpwd('123 ); 4、转型为“老大”
JSON.toJSONString将“老板”转换为JSON格式的字符串:
stringreceiverofpojo=JSON.tojsonstring (my user1); system.out.println (receiverofpojo; 输出结果:
{'id':1,' username': '老板',' userpwd':'123 ',' usersex':'male'} plus :为什么直接用my user1. to ssos
system.out.println (my user1. tostring (); 输出功率
myuser(id=1,username=老板,userpwd=123,usersex=male,version=null,createTime=null,updateTime=null ) )
将类型为33558www.Sina.com/string的“老板”重新转换为Myuser类型(请注意已传递给Myuser.class,请告诉我要转换为parseObject的目标类型) )
myuserreceiverofjsonobject=JSON object.parse object (receiverofpojo,Myuser.class ); 系统. out.println (my user1. equals (receiverofjsonobject ) ); 输出结果
真的
5、制作“老二”,生成列表对象
Myuser myuser2=new Myuser (; myuser2.setid(2; myuser2.setUsername ('老二); myuser2.setusersex('male ); myuser2.setuserpwd(ABC ); ListMyuser myusers=new ArrayList (; myusers.add(myuser1; myusers.add(myuser2; 6、切换列表
将33558www.Sina.com/list对象转换为JSON格式的字符串
stringreceiveroflist=JSON.tojsonstring (my users ); system.out.println (receiveroflist; system.out.println (my users.tostring (); 输出:
[{'id':1,' username': '老板',' userpwd':'123 ',' usersex':'male'},{'id':2,] username=老板,userpwd=123,usersex=male,version=null,createtime] userpwd=abc,usersex=male,version=null
将格式为3358www.Sina.com/JSON的List字符串转换为ListUser
listmyuserreceiverofjsonlist=JSON array.parse array (receiveroflist,Myuser.class ); system.out.println (receiverofjsonlist.equals (my users ); 输出:
true List也是Object,为什么不能使用JSONobject.parseobject(xx,T.class )? 怎么样呢?
listmyuserreceiverofjsonlist=JSON array.parse array (receiveroflist,Myuser.class ); listmyuserreceiverofjsonlist2=JSON array.parse object (receiveroflist,List.class ); //receiverofjsonlis 2t=JSON array.parse object (receiveroflist,Myuser.class ); 系统. out.println (receiverofjsonlist; system.out.println (receiverofjsonlist 2; 系统. out.println (receiverofjsonlist2. equals (receiverofjsonlist ) ); 输出:
[myuser(id=1,username=老板,userpwd=123,usersex=male,version=null,createTime=null,更新时间=null usetime ) 更新时间=null ] [ { ' usersex ' 3360 ' male ',' userpwd ' : ' male ',' usersex ' : ' ABC ] 所以先进入List.class。
另外,JSON array.parse object (receiveroflist,List.class ) :语法检查通过,与查看输出也有关联,但看起来像JSON字符串,显然对JAVA内存有要求
system.out.println (receiverofjsonlist2. get (1).getClass ) ); 取得的应该是“老二”,但被报告错了:
jva.lang.classcastexception : com.Alibaba.fast JSON.jsonobjectcannotbecasttocom.hfy.demo.POJO.my user是rece cecason
所以List用JSONArray就可以了。