我正在从Java中反序列化JSON,如下所示:
Java
jsonInString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(graphDTO);
JSON
"accounts" : [ {
"name" : "1009427721",
"value" : 16850.79,
"children" : [ {
"name" : "BITCOIN EARNINGS",
"value" : 10734.24,
"children" : [ {
"name" : "2017",
"value" : 1037.82,
"children" : [ {
"name" : "07",
"value" : 518.91
} ]
} ]
}, ...
反序列化的Java POJO为:
public class GraphDTO {
private Set<Account> accounts = new HashSet<>();
public Set<Account> getAccounts() {
return accounts;
}
}
问题
var data = { "accounts" : [ {
...
如何避免这种情况?答案 0 :(得分:1)
我认为不可能避免使用accounts
,但是您可以这样做:
jsonInString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(graphDTO.getAccounts());
我们正在等待您解析javascript中的JSON ...
答案 1 :(得分:0)
它的工作原理如下:
应用Mohicane的答案:
mapper.writerWithDefaultPrettyPrinter().writeValueAsString(graphDTO.getAccounts())
使用以下方法将JSON从Java注入JavaScript(在JSP中):
var data = ${graphDTOJSON};
非常感谢!