Controller
@RequestMapping("/getjson")
@ResponseBody
public ItemCustom testJson(Integer id) throws Exception {
return it.getCustomById(2);
}
jsp
springmvc.xml
<mvc:annotation-driven>
<mvc:message-converters register-defaults="false">
<!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
<bean id="fastJsonHttpMessageConverter"
class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
contentType问题参考:
http://bbs.csdn.net/topics/390897369
contentType:设置为 application/json时,controller中,要使用@RequestBody接收参数
例:通过ajax修改单个pojo对象
在data里面直接定义要修改的属性,在controller中用pojo对象去接受就可以。
现在遇到一个问题:就是pojo中属性名与传递过来的name不一致如何解决。
如果是单个属性,我知道可以用@RequestParam(value=“loginName”) String name来解决