问题
i am newbie and getting difficulty to save my JSonObject into my Beanclass *this is JSON Object:* on result of this LOC:
JSONObject responseJson;
Log.i("LoginActivity",responseJson.toString());
11-28 22:15:56.525: I/LoginActivity(22793): {"message":"Successfully Logged In.","auths":"Global Administrator,Installer,KONG,Project Manager,SendPdfToCustomerRole,Surveyor ","user":{"view_all_proposals":"0","role_id":"1","contact_no":"020 8547 4333 (x354)","date_modified":"2013-10-10 10:08:07","status":"ACTIVE","profit_margin_limit":"","cash_code":"KHO","date_created":"2013-02-03 06:41:41","user_initials":"KHO","password":"f10343d1dc8d44c8935b356aa3f8aae2","id":"27","first_name":"Kong","username":"kong","is_admin":"0","address":"Technology Manager","email":"kong.hoang@mrfsgroup.com","proposal_review":"3000000","last_name":"Hoang","ldap_authentication":"0"},"status":true,"apkStatus":true,"apkFileDate":"2013-11-25 05:07:27","apkFile":"34_SurveyAppNew.apk"}
and My Bean Class:
public class LoginBean {
private int id;
private String username;
private String password;
private String email;
private String status;
private Date ACTIVE;
private Date dateCreated;
private Date dateModified;
private String isAdmin; // is '0'
private String userInitials;
private int roleId;
private String firstName;
private String lastName;
private String contactNo;
private String address;
private String profitMarginLimit;
/**
* @return the id
*/
public int getId() {
return id;
}
/**
* @param id the id to set
*/
public void setId(int id) {
this.id = id;
}
/**
* @return the username
*/
public String getUsername() {
return username;
}
/**
* @param username the username to set
*/
public void setUsername(String username) {
this.username = username;
}
/**
* @return the password
*/
public String getPassword() {
return password;
}
/**
* @param password the password to set
*/
public void setPassword(String password) {
this.password = password;
}
/**
* @return the email
*/
public String getEmail() {
return email;
}
/**
* @param email the email to set
*/
public void setEmail(String email) {
this.email = email;
}
/**
* @return the status
*/
public String getStatus() {
return status;
}
/**
* @param status the status to set
*/
public void setStatus(String status) {
this.status = status;
}
/**
* @return the aCTIVE
*/
public Date getACTIVE() {
return ACTIVE;
}
/**
* @param aCTIVE the aCTIVE to set
*/
public void setACTIVE(Date aCTIVE) {
ACTIVE = aCTIVE;
}
/**
* @return the dateCreated
*/
public Date getDateCreated() {
return dateCreated;
}
/**
* @param dateCreated the dateCreated to set
*/
public void setDateCreated(Date dateCreated) {
this.dateCreated = dateCreated;
}
/**
* @return the dateModified
*/
public Date getDateModified() {
return dateModified;
}
/**
* @param dateModified the dateModified to set
*/
public void setDateModified(Date dateModified) {
this.dateModified = dateModified;
}
/**
* @return the isAdmin
*/
public String getIsAdmin() {
return isAdmin;
}
/**
* @param isAdmin the isAdmin to set
*/
public void setIsAdmin(String isAdmin) {
this.isAdmin = isAdmin;
}
/**
* @return the userInitials
*/
public String getUserInitials() {
return userInitials;
}
/**
* @param userInitials the userInitials to set
*/
public void setUserInitials(String userInitials) {
this.userInitials = userInitials;
}
/**
* @return the roleId
*/
public int getRoleId() {
return roleId;
}
/**
* @param roleId the roleId to set
*/
public void setRoleId(int roleId) {
this.roleId = roleId;
}
/**
* @return the firstName
*/
public String getFirstName() {
return firstName;
}
/**
* @param firstName the firstName to set
*/
public void setFirstName(String firstName) {
this.firstName = firstName;
}
/**
* @return the lastName
*/
public String getLastName() {
return lastName;
}
/**
* @param lastName the lastName to set
*/
public void setLastName(String lastName) {
this.lastName = lastName;
}
/**
* @return the contactNo
*/
public String getContactNo() {
return contactNo;
}
/**
* @param contactNo the contactNo to set
*/
public void setContactNo(String contactNo) {
this.contactNo = contactNo;
}
/**
* @return the address
*/
public String getAddress() {
return address;
}
/**
* @param address the address to set
*/
public void setAddress(String address) {
this.address = address;
}
/**
* @return the profitMarginLimit
*/
public String getProfitMarginLimit() {
return profitMarginLimit;
}
/**
* @param profitMarginLimit the profitMarginLimit to set
*/
public void setProfitMarginLimit(String profitMarginLimit) {
this.profitMarginLimit = profitMarginLimit;
}
}
Can someone please guide me how can i save JSON response into my BeanClass.
回答1:
You can do it by a lots of line of code. Since you are a newbie I don't recommend you to use this library Gson
but it will solve your problem. Its just one line of code using Gson
Using Gson...
Gson gson = new Gson();
Loginbean bean = new LoginBean(......); // Your constructor
bean.setXYZ(....); // If you want
String json = gson.toJson(bean);
// And
LoginBean gotFromJson = gson.fromJson(json, LoginBean.class);
// Where json is the JSON you got from response
// You can get all the values of your fields here. like...
int id = gotFromJson.getId();
// and other getters. it will still return the values.
You can find Gson here
回答2:
I think you require exactly this
http://khurramitdeveloper.blogspot.in/search?q=gson+
read carefully you will find solution for your problem :) Happy Coddddding :)
来源:https://stackoverflow.com/questions/20259205/how-to-store-jsonobject-result-into-beanclass-using-java-in-android