实际上通过springMVC实现ajax很容易也很简便,今天来说说怎么实现json的返回数据。
首先,我们先导入jackson-all-1.9.11.jar,这是将对象转化为json的关键。
然后,我们需要在XXX-servlet.xml中进行配置
<!-- 从请求和响应读取/编写字符串 -->
<bean id="StringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
</list>
</property>
</bean>
<!-- 用于将对象转化为json -->
<bean id="jsonConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
<!-- 配置 -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="StringHttpMessageConverter"/>
<ref bean="jsonConverter"/>
</list>
</property>
</bean>
最后在controller中添加@ResponseBody注释
@RequestMapping(value="/ajax2")
public @ResponseBody User2 Ajax2(String name,HttpServletResponse response){
/*springMVC响应ajax方法返回json*/
System.out.println(name);
User2 user2 = new User2();
user2.setName(name);
user2.setUdate(new Date());
return user2;
}
jquery中的代码:
$.post(
"ajax2.do",
{name:name},
function(data){
alert(data.name+"---"+data.udate);
},
"json"
);