SpringMVC 与ajax数据交互,以及SpringMVC配置json环境问题
用springMVC与前台ajax传输数据,ajax返回错误500问题?
解决思路:
第一步,检查springMVC是否缺少必要的jar包,查询百度后发现springMVC,在引用
@ResponseBody时,需要配置json环境,这个需要引入的jar包有三种方案:小编在这块使用的是第三种,具体的可以参考:https://www.cnblogs.com/gxz-sw/p/6860447.html:
- jackson-core-2.9.7.jar
- jackson-databind-2.9.7.jar
- jackson-annotations-2.9.7.jar
- jackson-mapper-asl-1.9.13.jar
在springMVC配置文件dispatcher-servlet.xml中添加:
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.StringHttpMessageConverter"/>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</mvc:message-converters>
</mvc:annotation-driven>
SpringMVC 后台数据获取ajax程序
@RequestMapping(value = "url",method = RequestMethod.POST)
@ResponseBody
public Map<String,Object> m_rylb1(@RequestBody String username){
System.out.println("username = [" + username + "]");
Map<String,Object> resultMap = new HashMap<String, Object>(2);
resultMap.put("users",userService.getUsers());
resultMap.put("username",username);
return resultMap;
}
前台ajax请求数据代码:
var $=layui.$;
var param = {username : "yitop"};
$.ajax({
type: "POST",
url: "/url",
data:JSON.stringify(param),
contentType:"application/json;charset=utf-8",
dataType: "json",
contentType: false, //禁止设置请求类型
processData: false,
async: false,
cache: false,
error: function(data) {
//服务器返回失败调用的方法
// alert("error!---说明服务器返回失败");
console.log(data.responseText);
},
success: function (data) {
console.log(data)
if(data.isSuccess){
console.log(data.responseText);
}
}
});
ajax与后台数据请求注意的地方:
这里的url ,ajaxq请求方法对应的get ,post对应的是:
@RequestMapping(value = "url",method = RequestMethod.POST)'
还没有评论,来说两句吧...