Spring mvc 接收json对象


Posted in Javascript onDecember 10, 2015

本文通过代码实例介绍spring mvc 接收json数据的方法,具体详情如下所示:

接收JSON

使用 @RequestBody 注解前台只需要向 Controller 提交一段符合格式的 JSON,Spring 会自动将其拼装成 bean。

1)在上面的项目中使用第一种方式处理返回JSON的基础上,增加如下方法:

Java代码

@RequestMapping(value="/add",method=RequestMethod.POST, headers = {"content-type=application/json","content-type=application/xml"}) 
  @ResponseBody 
  public Object addUser(@RequestBody User user) 
  { 
    System.out.println(user.getName() + " " + user.getAge()); 
    return new HashMap<String, String>().put("success", "true"); 
  }

这里的POJO如下:

Java代码

public class User { 
    private String name; 
    private String age; 
    //getter setter 
  }

2)而在前台,我们可以用 jQuery 来处理 JSON。从这里,我得到了一个 jQuery 的插件,可以将一个表单的数据返回成JSON对象:

Js代码

$.fn.serializeObject = function(){ 
    var o = {}; 
    var a = this.serializeArray(); 
    $.each(a, function(){ 
      if (o[this.name]) { 
        if (!o[this.name].push) { 
          o[this.name] = [o[this.name]]; 
        } 
        o[this.name].push(this.value || ''); 
      } 
      else { 
        o[this.name] = this.value || ''; 
      } 
    }); 
    return o; 
  };

   以下是使用 jQuery 接收、发送 JSON 的代码:

Js代码

$(document).ready(function(){ 
    jQuery.ajax({ 
      type: 'GET', 
      contentType: 'application/json', 
      url: 'jsonfeed.do', 
      dataType: 'json', 
      success: function(data){ 
        if (data && data.status == "0") { 
          $.each(data.data, function(i, item){ 
            $('#info').append("姓名:" + item.name +",年龄:" +item.age); 
          }); 
        } 
      }, 
      error: function(){ 
        alert("error") 
      } 
    }); 
    $("#submit").click(function(){ 
      var jsonuserinfo = $.toJSON($('#form').serializeObject()); 
      jQuery.ajax({ 
        type: 'POST', 
        contentType: 'application/json', 
        url: 'add.do', 
        data: jsonuserinfo, 
        dataType: 'json', 
        success: function(data){ 
          alert("新增成功!"); 
        }, 
        error: function(){ 
          alert("error") 
        } 
      }); 
    }); 
  });

但是似乎用Spring这套东西真是个麻烦的事情,相对Jersey对RESTful的实现来看,确实有很多不简洁的地方。

以上所述是本文给大家分享的Spring mvc 接收json数据的相关资料,希望大家喜欢。

Javascript 相关文章推荐
禁止JQuery中的load方法装载IE缓存中文件的方法
Sep 11 Javascript
腾讯的ip接口 方便获取当前用户的ip地理位置
Nov 25 Javascript
JS实现根据出生年月计算年龄
Jan 10 Javascript
Vue.js结合bootstrap实现分页控件
Mar 10 Javascript
微信小程序 获取二维码实例详解
Jun 23 Javascript
webpack 样式加载的实现原理
Jun 12 Javascript
js序列化和反序列化的使用讲解
Jan 19 Javascript
详解VUE前端按钮权限控制
Apr 26 Javascript
Electron-vue开发的客户端支付收款工具的实现
May 24 Javascript
详解基于Vue/React项目的移动端适配方案
Aug 23 Javascript
Vue实现图片轮播组件思路及实例解析
May 11 Javascript
微信小程序实现点击页面出现文字
Sep 21 Javascript
SpringMVC返回json数据的三种方式
Dec 10 #Javascript
js操作数组函数实例小结
Dec 10 #Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
Dec 10 #Javascript
jQuery自定义动画函数实例详解(附demo源码)
Dec 10 #Javascript
javascript图片预加载完整实例
Dec 10 #Javascript
JavaScript动态插入CSS的方法
Dec 10 #Javascript
jQuery实现监控页面所有ajax请求的方法
Dec 10 #Javascript
You might like
PHP面向对象学习笔记之二 生成对象的设计模式
2012/10/06 PHP
PHP生成二维码的两个方法和实例
2014/07/01 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
php获取微信基础接口凭证Access_token
2018/08/23 PHP
JS 实现双色表格实现代码
2009/11/24 Javascript
javascript学习笔记(十八) 获得页面中的元素代码
2012/06/20 Javascript
Nodejs极简入门教程(三):进程
2014/10/27 NodeJs
jQuery支持动态参数将函数绑定到事件上的方法
2015/03/17 Javascript
JavaScript实现的Tween算法及缓冲特效实例代码
2015/11/03 Javascript
javascript实现自动填写表单实例简析
2015/12/02 Javascript
简述jQuery ajax的执行顺序
2016/01/05 Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
2017/01/20 Javascript
javascript定时器取消定时器及优化方法
2017/07/08 Javascript
Vue的双向数据绑定实现原理解析
2020/02/17 Javascript
koa-passport实现本地验证的方法示例
2020/02/20 Javascript
删除目录下相同文件的python代码(逐级优化)
2012/05/25 Python
Python的Tornado框架异步编程入门实例
2015/04/24 Python
python冒泡排序简单实现方法
2015/07/09 Python
Python中列表与元组的乘法操作示例
2018/02/10 Python
简单实现python数独游戏
2018/03/30 Python
Python循环中else,break和continue的用法实例详解
2019/07/11 Python
python移位运算的实现
2019/07/15 Python
python实现一个函数版的名片管理系统过程解析
2019/08/27 Python
详解Python3 pickle模块用法
2019/09/16 Python
python使用python-pptx删除ppt某页实例
2020/02/14 Python
Python直接赋值及深浅拷贝原理详解
2020/09/05 Python
基于PyInstaller各参数的含义说明
2021/03/04 Python
大学生职业生涯十年规划书范文
2014/09/17 职场文书
党员对照检查剖析材料
2014/10/13 职场文书
政风行风评议工作总结
2014/10/21 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
2014年个人工作总结报告
2014/11/27 职场文书
车间质检员岗位职责
2015/04/08 职场文书
三方合作意向书范本
2015/05/09 职场文书
python通过函数名调用函数的几种方法总结
2021/06/07 Python
vue ant design 封装弹窗表单的使用
2022/06/01 Vue.js