一:引入包:

1 <dependency> 2 <groupId>com.alibaba</groupId> 3 <artifactId>fastjson</artifactId> 4 <version>1.2.41</version> 5 </dependency>
二:只需要在實體類上加上注解,並且設置Json對應字段名即可。
簡單的例子:

1 @Data 2 public class UserInfo { 3 private Integer id; 4 @JSONField(name = "USERNAME") 5 private String uName; 6 @JSONField(name = "USER_ADDRESS") 7 private String uAddress; 8 }
JSONObject中Java對象轉換成Json格式的兩種方式:

1 RiemannUser riemannUser = new RiemannUser(); 2 riemannUser.setId(1); 3 riemannUser.setMessage("Hello JSONObject"); 4 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 5 String date = sdf.format(new Date()); 6 riemannUser.setSendDate(date); 7 8 String jsonString = JSONObject.toJSONString(riemannUser); 9 System.out.println(jsonString);
{"id":1,"message":"Hello JSONObject","sendDate":"2019-07-04 00:01:55"}
2、net.sf.json.JSONObject 先調用 fromObject 再調用 toString
pom.xml 依賴:
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency>
這里一定要加入<classifier>jdk15</classifier>
這一行,原因是:還關系到兩個jdk版本的實現json-lib-2.1-jdk13.jar和json-lib-2.1-jdk15.jar。

1 RiemannUser riemannUser = new RiemannUser(); 2 riemannUser.setId(1); 3 riemannUser.setMessage("Hello JSONObject"); 4 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 5 String date = sdf.format(new Date()); 6 riemannUser.setSendDate(date); 7 8 JSONObject jsonObject = JSONObject.fromObject(riemannUser); 9 String jsonString = jsonObject.toString(); 10 System.out.println(jsonString);
json轉換成實體

1 String json = "{\"emailfaf\":\"\",\"fahjf\":633521,\"phon\":\"18844148983\",\"USERNAME\":\"郭現本\",\"wwew\":2222,\"aaa\":\"32fsf\"}"; 2 String jsonString = JSONObject.toJSONString(json); 3 System.err.println("jsonString"+jsonString); 4 SignGuest signGuest = JSON.parseObject(json,SignGuest.class); 5 System.err.println("signGuest="+signGuest);