當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JSON与JAVA数据的转换。JSONObject.fromObject()和JSONObject.toBean()
生活随笔
收集整理的這篇文章主要介紹了
JSON与JAVA数据的转换。JSONObject.fromObject()和JSONObject.toBean()
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
六個架包(666)
首先我們系統中要用到JSON解析,所以要引入這六個架包。飽飽
不引入這六個架包的話,使用JSONObject.fromObject ?和?SONObject.toBean會報錯,而且有的時候編譯器不會告訴你是架包缺少的錯誤哦!
JSON 對象? 與? JAVA對象的轉換
JSONObject? ?json = JSONObject.fromObject(String);//java轉json
JSONObject.toBean()//json轉java
(1)java對象轉json對象。
? ? ? ? ? ? ? ? ——HashMap轉為JSON對象:JSONObject.fromObject()
? ? ? ? ? json對象又再次轉換成java對象
? ? ? ? ? ? ? ? ?——JSON轉為Map<String,String>:JSON強制轉換
栗子1
public class JSONTest {public static void main(String[] args){HashMap<String,String> map=new HashMap<String,String>();map.put("A", "B");//map={A=B}JSONObject json = JSONObject.fromObject(map);//json={"A":"B"}System.out.println(json.toString());//{"A":"B"}//再將json強轉成mapMap<String,String> map2=(Map<String,String>)json;//{"A":"B"}System.out.println(map2.toString());} }忽然發現兩件事:
一件事:HashMap中key值相同的話,前一個會被后一個覆蓋。(原諒我太渣,現在才知道)
第二件事:相比于有道筆記,飽飽更愛寫CSDN啊!
public class JSONTest {public static void main(String[] args){HashMap<String,String> map=new HashMap<String,String>();map.put("A", "B");//map={A=B}map.put("A", "C");//map={A=C}JSONObject json = JSONObject.fromObject(map);//json={"A":"C"}System.out.println(json.toString());//{"A":"C"}//再將json強轉成mapMap<String,String> map2=(Map<String,String>)json;//{"A":"C"}System.out.println(map2.toString());} }栗子2
public class JSONTest {public static void main(String[] args){HashMap<String,String> map=new HashMap<String,String>();map.put("A", "B");//map={A=B}map.put("C", "D");//map={A=B, C=D}JSONObject json = JSONObject.fromObject(map);//json={"A":"B","C":"D"}System.out.println(json.toString());//再將json強轉成mapMap<String,String> map2=(Map<String,String>)json;//{"A":"B","C":"D"}System.out.println(map2.toString());} }(2)java對象轉json對象。
? ? ? ? ? ? ? ? ——String轉為JSON對象:JSONObject.fromObject()
? ? ? ? ? json對象又再次轉換成java對象
? ? ? ? ? ? ? ? ?——JSON轉為Map<String,Object>:JSON強制轉換
mapString = {"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":"","resJson":{"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":""} } public class JSONTest {public static void main(String[] args){//將string類型的map數據轉換為json的數據格式,在將json的數據格式的轉換成java的 Map<String,Object>的數據類型String mapString = "{\"errmsg\":\"ok\",\"ErrorCode\":0,\"messageId\":\"f5d4566c4c833152b3feb42a8092ee6c\",\"invaliduser\":\"\",\"forbiddenUserId\":\"\",\"resJson\":{\"errmsg\":\"ok\",\"ErrorCode\":0,\"messageId\":\"f5d4566c4c833152b3feb42a8092ee6c\",\"invaliduser\":\"\",\"forbiddenUserId\":\"\"}}";//mapString={"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":"","resJson":{"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":""}}JSONObject json = JSONObject.fromObject(mapString);//json ={"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":"","resJson":{"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":""}}Map<String, Object> map = (Map<String, Object>)json;//map ={"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":"","resJson":{"errmsg":"ok","ErrorCode":0,"messageId":"f5d4566c4c833152b3feb42a8092ee6c","invaliduser":"","forbiddenUserId":""}}System.out.println("-----map:---"+map.toString());} }(3)java對象轉json對象。
? ? ? ? ? ? ? ? ?——String轉為JSON對象:JSONObject.fromObject()
? ? ? ? ? json對象又再次轉換成java對象
? ? ? ? ? ? ? ? ? ——JSON轉為Student對象:JSONObject.toBean()
public class JSONTest {public static void main(String[] args){String mapString = "{id:'211415034',name:'徐妍',age:'24'}";Student student = new Student();JSONObject json = JSONObject.fromObject(mapString);//json={"id":"211415034","name":"徐妍","age":"24"}student = (Student)JSONObject.toBean(json, Student.class);//曾經的學號:211415034 姓名:徐妍 年齡:24//JSONObject.toBean() 方法意為:從JSONObject 對象轉換為 JAVA 對象。System.out.println(student);} } public class Student {private int id;private String name;private int age;public int getId(){return id;}public void setId(int id){this.id = id;}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 toString(){return "曾經的學號:"+this.id+" 姓名:"+this.name+" 年齡:"+this.age;} }?
總結
以上是生活随笔為你收集整理的JSON与JAVA数据的转换。JSONObject.fromObject()和JSONObject.toBean()的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSS3 2D Transform
- 下一篇: js矢量图类库:Raphaël—Java