2017-05-30 41 views
1

我有一个java对象,我需要将其转换为JSON字符串以获取宁静的Web服务输入。使用gson获取正确的JSON字符串

我越来越

{"userInfo":[{"userRef":"dummydata","docView":"dummy"}], 
"searchParams":[{"dd_company":"dummy","dd_acc":"6000000","dd_serial_no":"0000","fr_amount":17779.24,"fr_doc_date":"May 4, 2015 12:00:00 AM"}], 
"resultFilter":[{"sortBy":"dd_doc_d","ascending":false,"resultStart":1,"resultCount":10}]} 

什么它应该看起来像字符串(注意,每个字段由相花括号分开,只是在上面的例子中的逗号)

{"userInfo":[{"userRef":"dummydata"}, 
{"docView":"dummy"}],"searchParams":[{"dd_company":"dummy"}, 
{"dd_acc":"6000000"},{"dd_serial_no":"0000"}, 
{"fr_amount":17779.24},{"fr_doc_date":"May 4, 2015 12:00:00 AM"}], 
"resultFilter":[{"sortBy":"dd_doc_d"}, 
{"ascending":false},{"resultStart":1}, 
{"resultCount":10}]} 

基本上我需要在我的数组中用花括号分隔每个项目。

public class UserInfo implements Serializable { 
private String userRef; 
private String docView; 

public String getUserRef() { 
    return userRef; 
} 
public void setUserRef(String userRef) { 
    this.userRef = userRef; 
} 
public String getDocView() { 
    return docView; 
} 
public void setDocView(String docView) { 
    this.docView = docView; 
} 

} 

public class SearchParams implements Serializable{ 
private String cd_company; 
private String fr_acc; 
private String fr_serial_no; 
private Double fr_amount; 
private Date fr_doc_d; 

public String getCd_company() { 
    return cd_company; 
} 
public void setCd_company(String cd_company) { 
    this.cd_company = cd_company; 
} 
public String getFr_acc() { 
    return fr_acc; 
} 
public void setFr_acc(String fr_acc) { 
    this.fr_acc = fr_acc; 
} 
public String getFr_serial_no() { 
    return fr_serial_no; 
} 
public void setFr_serial_no(String fr_serial_no) { 
    this.fr_serial_no = fr_serial_no; 
} 
public Double getFr_amount() { 
    return fr_amount; 
} 
public void setFr_amount(Double fr_amount) { 
    this.fr_amount = fr_amount; 
} 
public Date getFr_doc_d() { 
    return fr_doc_d; 
} 
public void setFr_doc_d(Date fr_doc_d) { 
    this.fr_doc_d = fr_doc_d; 
} 
} 

public class ResultFilter implements Serializable{ 
private String sortBy; 
private boolean ascending; 
private int resultStart; 
private int resultCount; 

public String getSortBy() { 
    return sortBy; 
} 
public void setSortBy(String sortBy) { 
    this.sortBy = sortBy; 
} 
public boolean getAscending() { 
    return ascending; 
} 
public void setAscending(boolean ascending) { 
    this.ascending = ascending; 
} 
public int getResultStart() { 
    return resultStart; 
} 
public void setResultStart(int resultStart) { 
    this.resultStart = resultStart; 
} 
public int getResultCount() { 
    return resultCount; 
} 
public void setResultCount(int resultCount) { 
    this.resultCount = resultCount; 
} 
} 

我创建了一个GSON对象的下方,打印出来的JSON字符串

Gson gson = new Gson(); 
String chequeInput = gson.toJson(criteria); 
System.out.println("JSON String: " + chequeInput); 
+0

请张贴一些代码 – ImAtWar

+0

在你的应该看起来像什么? – Samarth

+0

我已将POJO添加为清晰度 – OAM

回答

0

响应仅会作为,所以如果你有一个集合或数组,你希望每场不同的对象。每个类的获得都将用逗号分开,括号将在可迭代项中出现两个独立的不同位置。我想如果你使用HashMap你可能会得到你想要的。但更好地寻找它。