首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >弹簧不起作用

弹簧不起作用
EN

Stack Overflow用户
提问于 2012-02-26 14:46:45
回答 2查看 343关注 0票数 0

我创建了一个带有方法处理程序的控制器,

代码语言:javascript
复制
    @RequestMapping( value = {"/membersjson"},method = RequestMethod.GET)
            public @ResponseBody String getMembers(Model model) {
                List<Member> members = memberService.getMembers();
                model.addAttribute("members",members);
                return "jsontemplate";
            }
代码语言:javascript
复制
<bean id="jsontemplate"
        class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" />

我希望output在json中,但是输出却是"jsontemplate“。有谁能解释一下原因吗。提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-26 15:04:19

当您使用MappingJacksonJsonView时,@ResponseBody或任何其他视图或视图解析器bean都是无关的。相反,Spring将尝试将方法的返回值直接转换为响应。在本例中,它决定将其转换为字符串响应。

首先,确保您已经在上下文中声明了<mvc:annotation-driven/>,并声明了杰克逊可以在类路径上使用。。还要确保浏览器在其application/json头中发送Accept

票数 4
EN

Stack Overflow用户

发布于 2012-02-26 15:03:22

您不应该返回字符串"jsontemplate";您应该返回List<Member>Model。json映射应该自动发生。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9454034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档