java – 在Spring MVC控制器中反序列化json数组
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 在Spring MVC控制器中反序列化json数组,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1709字,纯文字阅读大概需要3分钟。
内容图文
![java – 在Spring MVC控制器中反序列化json数组](/upload/InfoBanner/zyjiaocheng/787/33d1b28d53084cf8be3816670a5be7c3.jpg)
我发送一个json对象列表,并尝试在我的Spring控制器中反序列化它.但是我一直得到“错误请求”的错误并导致状态代码为415.但是,我的json数组是有效的.
json是 –
{
“users”: [
{
“userName”: “john”,
“email”: “john@gmail.com”,
“user_id”: “u223344”
},
{
“userName”: “Smith”,
“email”: “smith@gmail.com”,
“user_id”: “u223345”
}
]
}
Ajax调用如下 –
$.ajax({
url: $("#addNewUser").attr("action"),
data: JSON.stringify({users : dataToSend}),
dataType: 'json',
type: "POST",
beforeSend: function(xhr) {
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Content-Type", "application/json");
},
success: function(data){
alert('success= ' + data);
},
error:function(data,status,er) {
alert("error: "+ data.responseText +" status: "+status+" er:"+er);
}
});
包装类如下. User和UserWrapper类 –
public class User {
private String email;
private String userName;
private String user_id;
//getters and setters
}
public class UserWrapper {
private List<User> userList;
//getter and setter
}
最后,弹簧MVC控制器是 –
@RequestMapping(value="/user/add", method=RequestMethod.POST,
produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public void createTeamMember(@RequestBody UserWrapper userWrapper) {
try{
for(User user : userWrapper.getUserList()){
System.out.println(user.getEmail());
}
}catch(Exception ex){
ex.printStackTrace();
}
}
我在pom.xml中添加了对jackson-core和jackson-mapper的依赖.我使用的是Spring 4.0.3.任何帮助表示赞赏.
解决方法:
正如@shazin所说,你很可能在你的问题上发布了错误的方法,或者如果没有,只需做出他建议的改变.
您需要另一个修复程序,即将UserList的userList属性重命名为用户,以便它与正在发送的JSON属性匹配.
我们这些修复,您不应该有其他问题,因为您的请求没问题.
内容总结
以上是互联网集市为您收集整理的java – 在Spring MVC控制器中反序列化json数组全部内容,希望文章能够帮你解决java – 在Spring MVC控制器中反序列化json数组所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。