gpt4 book ai didi

java - 使用 gson 获取正确的 JSON 字符串

转载 作者:太空宇宙 更新时间:2023-11-04 11:26:51 24 4
gpt4 key购买 nike

我有一个 java 对象,需要将其转换为 JSON 字符串以实现静态 Web 服务输入。

我得到的字符串

{"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);

最佳答案

只有当您在集合或数组中为您想要的每个字段都有不同的对象时,响应才会出现。类的每个获取都将用逗号分隔,并且括号将仅出现在可迭代项中的两个单独的不同位置。我想如果你使用 HashMap 你可能会得到你想要的。但要寻找更好的。

关于java - 使用 gson 获取正确的 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44263551/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com