我将我的消息转换器配置为杰克逊的然后
class Foo{int x; int y}
并在控制器中
@ResponseBody
public Foo method(){
return new Foo(3,4)
}
我希望从服务器返回一个 JSON 字符串 {x:'3',y:'4'} 而无需任何其他配置。但是对我的 ajax 请求得到 404 错误响应
如果该方法使用 @ResponseBody 注释,则返回类型将写入响应 HTTP 正文。返回值将使用 HttpMessageConverters 转换为声明的方法参数类型。
我错了吗 ?或者我应该使用序列化程序自己将我的响应对象转换为 Json 字符串,然后将该字符串作为响应返回。(我可以正确地做出字符串响应)还是应该进行一些其他配置?就像为 Foo 类添加注释
这是我的 conf.xml
<bean id="jacksonMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="jacksonMessageConverter"/>
</list>
</property>