将ModelAndView转换为JSON

一念堕轮回 2017-05-30 09:45:38
[size=18px][size=14px]最近需要些一个功能,需要将以前的代码转换为json格式,但是之前对象是modelandview格式.并且里面封装了其他的对象

我现在就像把里面的对象取出来,然后转换为json格式.

求各位大神帮帮忙!感激不尽!!!谢谢!!!


@SecurityMapping(display = false, rsequence = 0, title="买家订单列表", value="/buyer/order.htm*", rtype="buyer", rname="用户中心", rcode="user_center", rgroup="用户中心")
@RequestMapping({"/buyer/order.htm"})
public ModelAndView order(HttpServletRequest request, HttpServletResponse response, String currentPage, String order_id, String beginTime, String endTime, String order_status)
{
ModelAndView mv = new JModelAndView("user/default/usercenter/buyer_order.html", this.configService.getSysConfig(),
this.userConfigService.getUserConfig(), 0, request, response);
String shopping_view_type = CommUtil.null2String( request.getSession().getAttribute( "shopping_view_type" ) );
if( (shopping_view_type != null) && (!shopping_view_type.equals( "" )) && (shopping_view_type.equals( "wap" )) ) {
mv = new JModelAndView("wap/buyer_order.html",
this.configService.getSysConfig(), this.userConfigService.getUserConfig(), 1, request, response);
}
OrderFormQueryObject ofqo = new OrderFormQueryObject(currentPage, mv, "addTime", "desc");
ofqo.addQuery("obj.user.id", new SysMap("user_id", SecurityUserHolder.getCurrentUser().getId()), "=");
if (!CommUtil.null2String(order_id).equals("")) {
ofqo.addQuery("obj.order_id", new SysMap("order_id", "%" + order_id + "%"), "like");
mv.addObject("order_id", order_id);
}
if (!CommUtil.null2String(beginTime).equals("")) {
ofqo.addQuery("obj.addTime", new SysMap("beginTime", CommUtil.formatDate(beginTime)), ">=");
mv.addObject("beginTime", beginTime);
}
if (!CommUtil.null2String(endTime).equals("")) {
ofqo.addQuery("obj.addTime",
new SysMap("endTime", CommUtil.formatDate(endTime)), "<=");
mv.addObject("endTime", endTime);
}
if (!CommUtil.null2String(order_status).equals("")) {
if (order_status.equals("order_submit")) {
ofqo.addQuery("obj.order_status",
new SysMap("order_status", Integer.valueOf(10)), "=");
}
if (order_status.equals("order_pay")) {
ofqo.addQuery("obj.order_status",
new SysMap("order_status", Integer.valueOf(20)), "=");
}
if (order_status.equals("order_shipping")) {
ofqo.addQuery("obj.order_status",
new SysMap("order_status", Integer.valueOf(30)), "=");
}
if (order_status.equals("order_receive")) {
ofqo.addQuery("obj.order_status",
new SysMap("order_status", Integer.valueOf(40)), "=");
}
if (order_status.equals("order_finish")) {
ofqo.addQuery("obj.order_status",
new SysMap("order_status", Integer.valueOf(60)), "=");
}
if (order_status.equals("order_cancel")) {
ofqo.addQuery("obj.order_status",
new SysMap("order_status", Integer.valueOf(0)), "=");
}
}
mv.addObject("order_status", order_status);
IPageList pList = this.orderFormService.list(ofqo);
CommUtil.saveIPageList2ModelAndView("", "", "", pList, mv);
return mv;
}


...全文
1026 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
bxud3331 2019-08-02
  • 打赏
  • 举报
回复



@RequestMapping//下面加上
@ResponseBody
maradona1984 2019-08-01
  • 打赏
  • 举报
回复
引用 11 楼 lihaiming_2008 的回复:
[quote=引用 9 楼 maradona1984 的回复:] [quote=引用 7 楼 lihaiming_2008 的回复:] 我也在研究这个问题,如果能拦截到响应结果,再把数据从ModeAndView中取出转为json就好了。
springmvc已经提供了ResponseBodyAdvice,没必要拦截了[/quote]这是个好方法,这是用了AOP原理啊,对方法做了增强。[/quote] 不算aop,spring在各个节点基本都有钩子,可以扩展的
混进IT圈 2019-07-31
  • 打赏
  • 举报
回复
引用 9 楼 maradona1984 的回复:
[quote=引用 7 楼 lihaiming_2008 的回复:]
我也在研究这个问题,如果能拦截到响应结果,再把数据从ModeAndView中取出转为json就好了。

springmvc已经提供了ResponseBodyAdvice,没必要拦截了[/quote]这是个好方法,这是用了AOP原理啊,对方法做了增强。
maradona1984 2019-07-12
  • 打赏
  • 举报
回复
引用 7 楼 lihaiming_2008 的回复:
我也在研究这个问题,如果能拦截到响应结果,再把数据从ModeAndView中取出转为json就好了。
springmvc已经提供了ResponseBodyAdvice,没必要拦截了
Dkodak 2019-07-12
  • 打赏
  • 举报
回复
或者直接使用@RestController
混进IT圈 2019-07-09
  • 打赏
  • 举报
回复
我也在研究这个问题,如果能拦截到响应结果,再把数据从ModeAndView中取出转为json就好了。
b47248054 2017-06-01
  • 打赏
  • 举报
回复
增加注解@responsebody
猿小飞 2017-05-31
  • 打赏
  • 举报
回复
同意三楼。。。
xingyuner2 2017-05-31
  • 打赏
  • 举报
回复
同意三楼。。
HinanaiTenshi 2017-05-31
  • 打赏
  • 举报
回复
为何不把整个响应方法复制一份,然后直接挂上注解ResponseBody呢?
a_will 2017-05-31
  • 打赏
  • 举报
回复
同意楼上的建议,就是将获取到的Java 对象,直接再用json工具包,转换成json字符串就可以了。。。用阿里的json工具包,效率高。。。。

import com.alibaba.fastjson.JSONObject;

zhangshumin23 2017-05-30
  • 打赏
  • 举报
回复
直接把整个modelandview转成json对象就好啦,具体怎么转你要用alibaba的json包或者gson又或者其他的都可以,具体百度一下就知道了

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧