009_Gson版本支持
生活随笔
收集整理的這篇文章主要介紹了
009_Gson版本支持
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1. Gson提供@Since注釋來控制基于其各種版本的類的Json序列化/反序列化。考慮以下具有版本控制支持的類。在這個類中, 我們最初定義了一個name變量, 之后我們又添加了一個age新變量。使用@Since, 我們已經定義了版本1.0的name和版本1.1的age。@Since也可以添加到類上。
@Since(1.0) private String name; @Since(1.1) private int age;2. GsonBuilder提供了setVersion()方法來序列化這樣的版本化類。
GsonBuilder builder = new GsonBuilder(); builder.setVersion(1.0); Gson gson = builder.create();3. 例子
3.1. 新建一個名為GsonSerializeNulls的Java項目, 同時添加相關jar包。
3.2. 新建Student.java
package com.fj.v;import com.google.gson.annotations.Since;public class Student {@Since(1.0)private String name;@Since(1.1)private int age;public Student() {}public Student(String name, int age) {this.name = name;this.age = age;}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 "Student [name: " + name + ", age: " + age + "]";} }3.3. 新建App.java
package com.fj.v;import com.google.gson.Gson; import com.google.gson.GsonBuilder;public class App {public static void main(String[] args) {// 創(chuàng)建一個學生對象Student student = new Student("小明", 21);Gson gson = new Gson(); String jsonString = gson.toJson(student);System.out.println(jsonString); // 1. Gson構造器GsonBuilder builder = new GsonBuilder();// 2. Gson版本支持builder.setVersion(1.0);// 3. 格式良好的輸出builder.setPrettyPrinting();// 4. 創(chuàng)建Gson對象gson = builder.create();// 5. JavaBean轉化為JSON字符串jsonString = gson.toJson(student);System.out.println(jsonString);} }3.4. 運行項目
總結
以上是生活随笔為你收集整理的009_Gson版本支持的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 008_Gson从序列化中排除字段
- 下一篇: 013_logback中的SyslogA