一、添加依賴:html
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.46</version>
</dependency>
二、fastJson相互之間轉換:java
User類git
1 import lombok.Data; 2 3 @Data 4 public class User { 5 6 private Long id; 7 private String name; 8 }
Group類:github
1 import lombok.Data; 2 import lombok.NoArgsConstructor; 3 import java.util.ArrayList; 4 import java.util.List; 5 6 @Data 7 @NoArgsConstructor 8 public class Group { 9 10 private Long id; 11 private String name; 12 private List<User> users = new ArrayList<User>(); 13 14 }
字符串轉JSON對象1 /** 2 * 字符串轉JSON對象 3 */ 4 public static JSONObject jsonStrToObject(String str){ 5 JSONObject jsonObj = JSON.parseObject(str); 6 System.out.println(jsonObj.get("id")); 7 System.out.println(jsonObj.get("name")); 8 return jsonObj; 9 }
字符串轉POJO對象1 /** 2 * 字符串轉POJO對象 3 */ 4 public static User jsonStrToPOJO(String str){ 5 User user = JSON.parseObject(str,User.class); 6 System.out.println(user.getName()); 7 return user;
8 }
POJO對象轉字符串1 /** 2 * POJO對象轉字符串 3 */ 4 public static String PojoToStr(){ 5 6 Group group = new Group(); 7 group.setId(0L); 8 group.setName("admin"); 9 10 User guestUser = new User(); 11 guestUser.setId(2L); 12 guestUser.setName("guest"); 13 14 User rootUser = new User(); 15 rootUser.setId(3L); 16 rootUser.setName("root"); 17 18 List<User> list = new ArrayList<>(); 19 list.add(guestUser); 20 list.add(rootUser); 21 22 group.setUsers(list); 23 24 String jsonString = JSON.toJSONString(group); 25 return jsonString; 26 }
方法調用:json
1 public static void main(String[] args) { 2 3 String str = "{\"id\":2,\"name\":\"guest\"}"; 4 jsonStrToObject(str); 5 jsonStrToPOJO(str); 6 PojoToStr(); 7 8 }
示例代碼:githubspa