JSON格式的数据传递是最常用的方法之一,以下列出了常用的几种形态以及与Javabean之间的转换:
字符串json1="{“名称”:“zhangsan”,“年龄”:23日,“利益”:[{“兴趣”:“篮球”,“颜色”:[“绿色”、“黄”色]},{“兴趣”:“足球”,“颜色”:[‘红色”、“蓝”色]}]}”; 字符串json2="[{“名称”:“zhangsan”},{“名称”:“lisi”},{“名称”:“王”五}]”; 字符串json3="{' 1 ':{“名称”:“zhangsan”},“3”:{“名称”:“lisi”},“4”:{“名称”:‘wangwu}}”;//地图 字符串json4="{“名称”:“zhangsan”,“年龄”:23}”; >之前首先,此处的转化依赖两个JAR包
& lt; !——https://mvnrepository.com/artifact/com.google.code.gson/gson——比; & lt; dependency> & lt; groupId> com.google.code.gson & lt; artifactId> gson & lt; version> 2.8.1 & lt;/dependency> & lt; !——https://mvnrepository.com/artifact/org.json/json——比; & lt; dependency> & lt; groupId> org.json & lt; artifactId> json & lt; version> 20170516 & lt;/version> & lt;/dependency>其次,封装的Javabean代码如下
进口并不知道; 公开课出发{ 私人字符串名称; 私人整数年龄; 私人List兴趣爱好; 公共字符串getName () { 返回名称; } 公共空间setName(字符串名称){ this.name=名称; } 公共整数getAge () { 返回年龄; } 公共空间setAge(整数年龄){ 这一点。年龄=年龄; } 公共List getInterests () { 返回的利益; } 公共空间setInterests (List 利益){ this.interests=利益; } 类InterestBean { 私人字符串的兴趣; 私人List 颜色; 公共字符串getInterest () { 返回的兴趣; } 公共空间setInterest (String利息){ this.interest=利息; } 公共List 色鬼(){ 返回颜色; } 公共空间改变颜色(List 颜色){ 这一点。颜色=颜色; } } } 1,普通的json4格式的JSON解析:
公共空间testParseJson () { JSONObject jsonObj=new JSONObject (json4); 字符串名称=jsonObj.getString(“名字”); int年龄=jsonObj.getInt(“时代”); System.out.println(名称); System.out.println(年龄); 出发用户=new出发(); user.setAge(年龄); user.setName(名称); }2,数组形式的JSON解析以及GSON解析:
公共空间testJsonArray () { JSONArray JSONArray JSONArray=new (json2); for (int i=0;我& lt;jsonArray.length ();我+ +){ JSONObject jsonObj=jsonArray.getJSONObject(我); 字符串名称=jsonObj.getString(“名字”); System.out.println(名称); } }/* * *解析json数组 */公共空间testParseListJson () { Gson Gson=new Gson (); 型类型=new TypeToken用户=gson.fromJson (json2类型); (出发用户:用户){ System.out.println (user.getName ()); } }
3,内嵌JSON形式的JSON与GSON解析:
/* * *内嵌JSON解析 */公共空间testParseJson1 () { JSONObject rootJson=new JSONObject (json1); JSONArray jsonInterestArray=rootJson.getJSONArray(“利益”); for (int i=0;我& lt;jsonInterestArray.length ();我+ +){ JSONObject interestJsonObj=jsonInterestArray.getJSONObject(我); 字符串的兴趣=interestJsonObj.getString(“利益”); System.out.println(利益); 对象obj=interestJsonObj.get(“颜色”); System.out.println (obj); } }/* * *内嵌GSON解析 */公共空间testSimpleJson () { Gson Gson=new Gson (); 出发用户=gson.fromJson (json1 UserBean.class); System.out.println (user.getName ()); System.out.println (user.getAge ()); .size System.out.println (user.getInterests () ()); List详谈JSON与Javabean转换的几种形式