Java利用Jakson实现序列化与反序列化操作
生活随笔
收集整理的這篇文章主要介紹了
Java利用Jakson实现序列化与反序列化操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.序列化類信息
@Data @AllArgsConstructor @NoArgsConstructor public class User {private Integer id;private String name;private String password;@Overridepublic String toString() {return "User{" +"id=" + id +", name='" + name + '\'' +", password='" + password + '\'' +'}';} }注:這里使用了lomok工具包,不用再次封裝成員信息,有構造器和getter()和setter()方法
2.創建專門的類進行轉換
一個是List轉String,一個是String轉List
public class JaksonExecutor {private ObjectMapper mapper=new ObjectMapper();//序列化類對象public String UserToJson (List<User> list){String res="";try {res= mapper.writeValueAsString(list);} catch (JsonProcessingException e) {e.printStackTrace();}return res;}//反序列化public List<User> JsonToUser(String strs) throws IOException {List<User> list= mapper.readValue(strs,new TypeReference<List<User>>(){});return list;} }如果只是單一對象的話,用下面方法:
User user=mapper.readValue(strs,User.class);3.調用方法
@RequestMapping("/thymeleaf") public void showInfo() throws IOException {List<User> list=new ArrayList<>();User user=new User(1,"likui","123");User user2=new User(2,"admin","123");list.add(user);list.add(user2);String str=new JaksonExecutor().UserToJson(list);System.out.println(str);list=new JaksonExecutor().JsonToUser(str);System.out.println(list);}4.輸出結果:
總結
以上是生活随笔為你收集整理的Java利用Jakson实现序列化与反序列化操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaWeb学习之路——SpringB
- 下一篇: Java读取Excel文件并将之写入数据