項目前后端交互采用的是JSON傳輸,因為前后端溝通不多,經常造成數據格式不統一;在不想后台改動太多下,需要使用@SerializedName解決這個問題
解析數據使用的是Gson解析的json數據
@SerializedName(value = "name", alternate = {"Name", "studentName", "fullName"})中有兩個屬性,value="默認key",alternate="別名key1,別名key1...",別名可以有多個,多個別名用“,”分隔,便降低了數據別名不統一造成的解析異常
public class Student{ @SerializedName(value = "name", alternate = {"Name", "studentName", "fullName"}) private String name; @SerializedName(value = "age", alternate = {"Age", "year", "Year"}) private String age; @SerializedName(value = "class", alternate = {"Class", "remove", "Remove"}) private String class; @SerializedName(value = "id", alternate = {"ID", "studentId", "stuengtNumber"}) private String id; public String getName() { return name; } public void setName(String name) { this.name= name; } public String getAge() { return age; } public void setAge(String age) { this.age= age; } public String getClass() { return class; } public void setClass(String class) { this.class = class; } public String getId() { return id; } public void setId(String id) { this.id= id; } }