在为 JSON 响应创建 POJO class 后如何解析 JSON 响应?
how to parse JSON response after i have made a POJO class for JSON response?
这是我的 POJO class,我想在其中解析我的 JSON。
public class TestPojo {
@SerializedName("Login Response")
private List<com.example.amans.demoparsing.LoginResponse> mLoginResponse;
public List<com.example.amans.demoparsing.LoginResponse> getLoginResponse() {
return mLoginResponse;
}
public void setLoginResponse(List<com.example.amans.demoparsing.LoginResponse> LoginResponse) {
mLoginResponse = LoginResponse;
}
}
为此您需要使用 GSON class
compile 'com.google.code.gson:gson:2.7'
然后在响应字符串所在的代码中添加以下代码行
String response = // your response string is in array
List<LoginResponse> list = Arrays.asList(new Gson()
.fromJson(response, LoginResponse[].class));
或者你想在你的测试 pojo 上使用它 class
String response = // your response string
TestPojo testPojo = new Gson().fromJson(response, TestPojo.class);
编码愉快..:)
像下面这样创建你的 pojo 并将这个 gradle 添加到你的 build.gradle
compile 'com.google.code.gson:gson:2.7'
import java.util.List;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class TestPojo {
@SerializedName("Login Response")
@Expose
private List<LoginResponse> loginResponse = null;
public List<LoginResponse> getLoginResponse() {
return loginResponse;
}
public void setLoginResponse(List<LoginResponse> loginResponse) {
this.loginResponse = loginResponse;
}
public class LoginResponse {
@SerializedName("Status code")
@Expose
private String statusCode;
@SerializedName("OP Status")
@Expose
private String oPStatus;
@SerializedName("Status Message")
@Expose
private String statusMessage;
@SerializedName("Error Message")
@Expose
private String errorMessage;
@SerializedName("Date and Time")
@Expose
private String dateAndTime;
public String getStatusCode() {
return statusCode;
}
public void setStatusCode(String statusCode) {
this.statusCode = statusCode;
}
public String getOPStatus() {
return oPStatus;
}
public void setOPStatus(String oPStatus) {
this.oPStatus = oPStatus;
}
public String getStatusMessage() {
return statusMessage;
}
public void setStatusMessage(String statusMessage) {
this.statusMessage = statusMessage;
}
public String getErrorMessage() {
return errorMessage;
}
public void setErrorMessage(String errorMessage) {
this.errorMessage = errorMessage;
}
public String getDateAndTime() {
return dateAndTime;
}
public void setDateAndTime(String dateAndTime) {
this.dateAndTime = dateAndTime;
}
}
}
然后像下面一样使用上面的pojo
TestPojo testPojo = new Gson().fromJson(response,TestPojo.class);
String statusMessage = testPojo.getLoginResponse.get(0).getStatusMessage();
这是我的 POJO class,我想在其中解析我的 JSON。
public class TestPojo {
@SerializedName("Login Response")
private List<com.example.amans.demoparsing.LoginResponse> mLoginResponse;
public List<com.example.amans.demoparsing.LoginResponse> getLoginResponse() {
return mLoginResponse;
}
public void setLoginResponse(List<com.example.amans.demoparsing.LoginResponse> LoginResponse) {
mLoginResponse = LoginResponse;
}
}
为此您需要使用 GSON class
compile 'com.google.code.gson:gson:2.7'
然后在响应字符串所在的代码中添加以下代码行
String response = // your response string is in array
List<LoginResponse> list = Arrays.asList(new Gson()
.fromJson(response, LoginResponse[].class));
或者你想在你的测试 pojo 上使用它 class
String response = // your response string
TestPojo testPojo = new Gson().fromJson(response, TestPojo.class);
编码愉快..:)
像下面这样创建你的 pojo 并将这个 gradle 添加到你的 build.gradle
compile 'com.google.code.gson:gson:2.7'
import java.util.List;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class TestPojo {
@SerializedName("Login Response")
@Expose
private List<LoginResponse> loginResponse = null;
public List<LoginResponse> getLoginResponse() {
return loginResponse;
}
public void setLoginResponse(List<LoginResponse> loginResponse) {
this.loginResponse = loginResponse;
}
public class LoginResponse {
@SerializedName("Status code")
@Expose
private String statusCode;
@SerializedName("OP Status")
@Expose
private String oPStatus;
@SerializedName("Status Message")
@Expose
private String statusMessage;
@SerializedName("Error Message")
@Expose
private String errorMessage;
@SerializedName("Date and Time")
@Expose
private String dateAndTime;
public String getStatusCode() {
return statusCode;
}
public void setStatusCode(String statusCode) {
this.statusCode = statusCode;
}
public String getOPStatus() {
return oPStatus;
}
public void setOPStatus(String oPStatus) {
this.oPStatus = oPStatus;
}
public String getStatusMessage() {
return statusMessage;
}
public void setStatusMessage(String statusMessage) {
this.statusMessage = statusMessage;
}
public String getErrorMessage() {
return errorMessage;
}
public void setErrorMessage(String errorMessage) {
this.errorMessage = errorMessage;
}
public String getDateAndTime() {
return dateAndTime;
}
public void setDateAndTime(String dateAndTime) {
this.dateAndTime = dateAndTime;
}
}
}
然后像下面一样使用上面的pojo
TestPojo testPojo = new Gson().fromJson(response,TestPojo.class);
String statusMessage = testPojo.getLoginResponse.get(0).getStatusMessage();