 
  Data Structure Data Structure
 Networking Networking
 RDBMS RDBMS
 Operating System Operating System
 Java Java
 MS Excel MS Excel
 iOS iOS
 HTML HTML
 CSS CSS
 Android Android
 Python Python
 C Programming C Programming
 C++ C++
 C# C#
 MongoDB MongoDB
 MySQL MySQL
 Javascript Javascript
 PHP PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to use @Until annotation using the Gson library in Java?
The @Until annotation can use with the setVersion() method of the GsonBuilder class. This annotation can apply to a field in java class and accepts float as an argument. This argument represents the version number in which the field has serialized. The @Until annotation can manage the versioning of JSON classes in web-services.
Syntax
@Documented @Retention(value=RUNTIME) @Target(value={FIELD,TYPE}) public @interface Until  Example
import com.google.gson.annotations.Until; import com.google.gson.Gson; import com.google.gson.GsonBuilder; public class GsonUntilAnnotationTest {    public static void main(String[] args) {       Employee emp = new Employee();       emp.setEmployeeName("Adithya");       emp.setEmployeeId(115);       emp.setEmployeeTechnology("Python");       emp.setEmploeeAddress("Pune");       System.out.println("Using version 0.5");       GsonBuilder gsonBuilder = new GsonBuilder();       Gson gson = gsonBuilder.setPrettyPrinting().setVersion(0.5).create();       String jsonString = gson.toJson(emp);       System.out.println(jsonString);       System.out.println("Using version 1.0");       gsonBuilder = new GsonBuilder();       gson = gsonBuilder.setPrettyPrinting().setVersion(1.0).create();       jsonString = gson.toJson(emp);       System.out.println(jsonString);       System.out.println("Using version 1.1");       gsonBuilder = new GsonBuilder();       gson = gsonBuilder.setPrettyPrinting().setVersion(1.1).create();       jsonString = gson.toJson(emp);       System.out.println(jsonString);    } } // Employee class class Employee {    private String empName;    private int empId;    @Until(1.1)    private String empTech;    @Until(1.1)    private String empAddress;    public String getEmployeeName() {       return empName;    }    public void setEmployeeName(String empName) {       this.empName = empName;    }    public int getEmployeeId() {       return empId;    }    public void setEmployeeId(int empId) {       this.empId = empId;    }    public String getEmployeeTechnology() {       return empTech;    }   public void setEmployeeTechnology(String empTech) {       this.empTech = empTech;    }    public String getEmploeeAddress() {       return empAddress;    }    public void setEmploeeAddress(String empAddress) {       this.empAddress = empAddress;    } } Output
Using version 0.5 {    "empName": "Adithya",    "empId": 115,    "empTech": "Python",    "empAddress": "Pune" } Using version 1.0 {    "empName": "Adithya",    "empId": 115,    "empTech": "Python",    "empAddress": "Pune" } Using version 1.1 {    "empName": "Adithya",    "empId": 115 }Advertisements
 