请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,您好,我对于@ResponseBody将对象返回到页面有疑问?

请问老师,

1,@ResponseBody是直接将结果返回到页面

2,JsonData.sucess("test validate")这是一个对象,加上toString,输出的结果是

JsonData(ret=true, msg=null, data=test validate)

底层到底做了什么能直接在浏览器输出——{"ret":true,"msg":null,"data":"test validate"}?

可以麻烦老师说一下吗?

正在回答

2回答

你好,JsonData.success方法实现是会生成一个JsonData实例,指定success为true,并设置data为传入的message,之后返回的就是一个设置了多个属性的对象了,然后通过@ResponseBody注解在返回前端时转换为json格式。就是你看到的结果了

0 回复 有任何疑惑可以回复我~
  • 提问者 心纯净 #1
    jimin老师,“JsonData.success方法实现是会生成一个JsonData实例,指定success为true,并设置data为传入的message,之后返回的就是一个设置了多个属性的对象了”这个我知道,我就是想问“@ResponseBody注解在返回前端时转换为json格式”这个只需要会用就可以吗?其实我项知道Java是如何实现这个转换的
    回复 有任何疑惑可以回复我~ 2019-01-03 14:20:49
  • 提问者 心纯净 #2
    您在spring-servlet配置了
    <bean id="jsonView" class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" />,虽然是这么说,其实我还是想知道如何转换的。可能我问问题,没有让您明白我的意思
    回复 有任何疑惑可以回复我~ 2019-01-03 14:32:40
  • Jimin #3
    哦,这个我建议你找一下springmvc流程讲解的源码先大致学习一下,要不单独讲解这个注解我也不知道从哪里开始,中间涉及到许多类的细节才能变成前端看到的结果
    回复 有任何疑惑可以回复我~ 2019-01-03 22:05:25
Jimin 2019-01-03 13:22:47

上面回答中 success设置为true 调整为 ret为true,我把字段说错了

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信