【问题标题】:how to store JSONObject result into BeanClass using java In Android?如何在 Android 中使用 java 将 JSONObject 结果存储到 BeanClass 中?
【发布时间】:2013-11-28 06:29:37
【问题描述】:

我是新手,很难将我的 JSonObject 保存到我的 Beanclass *这是 JSON 对象:* 关于这个 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", "密码":"f10343d1dc8d44c8935b356aa3f8aae2","id":"27","first_name":"Kong","用户名":"kong","is_admin":"0","地址":"技术经理","电子邮件":"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"}

和我的 Bean 类:

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;
}
}

有人可以指导我如何将 JSON 响应保存到我的 BeanClass 中。

【问题讨论】:

    标签: java android json javabeans jsonresult


    【解决方案1】:

    您可以通过很多行代码来完成。由于您是新手,我不建议您使用此库Gson,但它会解决您的问题。它只是使用Gson 的一行代码

    使用 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

    【讨论】:

    • 是的,我已经在我的代码中使用了 Gson,但我不知道如何将所有值从 jsonResponse 插入到 BeanClass
    • 如何插入来自 jsonresponse 的所有值?我不明白。您将获得一个包含所有值的 Loginbean 对象。您可以调用 getter 来检索字段的值。
    • @user1668447 请参考编辑。如果您有任何问题,请询问
    • 不,您不必使用 set 添加任何值。声明LoginBean gotFromJson = gson.fromJson(json, LoginBean.class); 将为您做所有事情。试试上面的代码。你会明白的。这里gotFromJson 是你的LoginBean 对象。
    【解决方案2】:

    我认为你确实需要这个

    http://khurramitdeveloper.blogspot.in/search?q=gson+

    仔细阅读,您会找到解决问题的方法 :) 快乐的Codddding :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-21
      • 1970-01-01
      • 2018-07-11
      相关资源
      最近更新 更多