带有对象属性的bean,如何转换成json对象或者字符串

发布于 2021-11-24 05:41:11 字数 341 浏览 825 评论 6

Accounts类

{

。。。。属性

private Users user; //这个是一个User类。对应到数据库上是userid

}

现在。我在action层。需要把得到的Accounts实例,转换成json格式。

出现问题:Accounts实例可以成功转换成json格式字符串。但是其中User的相关信息并没有得到。而且调试发现Accounts实例中是有User属性值的【我已经取消了懒加载】。问题就出现了转换到json这块了。如果通过jstl在前台是可以 accounts.user.userid得到值的。但是json得不到。。。。求助

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

野心澎湃 2021-11-30 04:36:12

这个json格式可以转换成类似 { id : "2", favoree : "测试2" } 这样子么?就是json的键值的键不显示成带双引号

嘦怹 2021-11-30 04:35:45

我也感觉是最基本的。但是事实却是不尽人意啊。主要代码如下:

public String getPayoutJson() throws IOException{
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/javascript;charset=utf-8");
response.setCharacterEncoding("utf-8");
List<Accounts> payouttList = accountServiceImp.getPayouts(AccountType.payout);
Accounts account = payouttList.get(0); //得到的account里面已经包含了关联的Users类信息。
//this.requestMap.put("payoutList", payouttList);
this.requestMap.put("payoutList", account);
ObjectMapper mapper = new ObjectMapper();

try {
String payoutJson = mapper.writeValueAsString(payouttList); //但是。在得到的json中没有对应的Users信息

response.getWriter().write(payoutJson);
System.out.println(payoutJson);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return null;
}

json如下。就是没有Users的信息啊。。。
[{"id":"1","favoree":"测试","remark":"松岛枫","moneyCount":22.0,"accountChangeDate":"2014-12-10 00:00","accountType":"payout","createDate":"2014-12-31 00:00","updateDate":null,"flag":true},

{"id":"2","favoree":"测试2","remark":"测试2","moneyCount":33.0,"accountChangeDate":"2015-01-09 00:00","accountType":"payout","createDate":"2015-01-03 00:00","updateDate":null,"flag":true}]

辞别 2021-11-30 04:33:49

我觉得这种bean转换应该是基本的,jackson没这么弱吧,贴个代码看看

挽清梦 2021-11-30 04:23:45

能不能看清问题,好好给个答复啊

草莓味的萝莉 2021-11-30 04:09:37

说明:本人使用的是jackson实现把bean转换成json字符串的。。。。

猫烠⑼条掵仅有一顆心 2021-11-30 03:29:27

fastjson,gson,jackson等等

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文