详解springmvc 接收json对象的两种方式


Posted in Javascript onDecember 06, 2016

最近学习了springmvc 接收json对象的两种方式,现在整理出来,具体如下: 

1、以实体类方式接收

前端 ajax 提交数据:

function fAddObj() {
  var obj = {};
  obj['objname'] = "obj";
  obj['pid'] = 1 ;

  $.ajax({
    url: 'admin/Obj/addObj.do',
    method: 'post',
    contentType: 'application/json', // 这句不加出现415错误:Unsupported Media Type
    data: JSON.stringify(obj), // 以json字符串方式传递
    success: function(data) {
      console.log("success...");
    },
    error: function(data) {
      console.log("error...");
    }
  });
}

springmvc 以model对象的形式接收:

@Controller
@RequestMapping("/admin/Obj")
public class ObjAction {
  // 注入操作类
  @Autowired
  private ObjService objService ;

  @RequestMapping(value = "/addObj")
  @ResponseBody
  public String addObj(@RequestBody Obj obj) {
    this.objService.insertObj(cate);
    return "success";
  }
}

2、以Map接收

@Controller
@RequestMapping("/admin/Obj")
public class ObjAction {
  /**
   * 前端操作与上面相同
   * @return
   */
  @RequestMapping(value = "/updateAttr")
  @ResponseBody
  public String updateAttr(@RequestBody Map<String, String> map) {
    if(map.containsKey("id"){
      Integer id = Integer.parseInt(map.get("id"));
    }
    if(map.containsKey("objname"){
      String objname = map.get("objname").toString();
    }
    if(map.containsKey("pid"){
      Integer pid = Integer.parseInt(map.get("pid"));
    }
    // 操作 ...
    return "success";
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS简单实现登陆验证附效果图
Nov 19 Javascript
JavaScript严格模式禁用With语句的原因
Oct 20 Javascript
JavaScript插件化开发教程(六)
Feb 01 Javascript
Js为表单动态添加节点内容的方法
Feb 10 Javascript
Bootstrap每天必学之折叠
Apr 12 Javascript
实用jquery操作表单元素的简单代码
Jul 04 Javascript
Vue.js组件使用开发实例教程
Nov 01 Javascript
jQuery实现使用sort方法对json数据排序的方法
Apr 17 jQuery
微信小程序实现滑动切换自定义页码的方法分析
Dec 29 Javascript
vue history 模式打包部署在域名的二级目录的配置指南
Jul 02 Javascript
JS图片预加载三种实现方法解析
May 08 Javascript
微信小程序实现日历小功能
Nov 18 Javascript
jQuery图片轮播(二)利用构造函数和原型创建对象以实现继承
Dec 06 #Javascript
jQuery File Upload文件上传插件使用详解
Dec 06 #Javascript
vue2.0开发实践总结之入门篇
Dec 06 #Javascript
微信小程序中单位rpx和rem的使用
Dec 06 #Javascript
JavaScript定时器实现的原理分析
Dec 06 #Javascript
原生js实现弹出层登录拖拽功能
Dec 05 #Javascript
详解Vue.js——60分钟组件快速入门(上篇)
Dec 05 #Javascript
You might like
咖啡豆要不要放冰箱的原因
2021/03/04 冲泡冲煮
Wordpress php 分页代码
2009/10/21 PHP
发一个php简单的伪原创程序,配合商城采集用的
2010/10/12 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
Smarty使用自定义资源的方法
2015/08/08 PHP
解析WordPress中的post_class与get_post_class函数
2016/01/04 PHP
Smarty高级应用之缓存操作技巧分析
2016/05/14 PHP
thinkPHP实现基于ajax的评论回复功能
2018/06/22 PHP
JSON为什么那样红为什么要用json(另有洞天)
2012/12/26 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
js获取本机的外网/广域网ip地址完整源码
2013/08/12 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
2015/06/06 Javascript
vue双向绑定简要分析
2017/03/23 Javascript
JS中cookie的使用及缺点讲解
2017/05/13 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
极简主义法编写JavaScript类
2017/11/02 Javascript
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
微信小程序获取用户信息并保存登录状态详解
2019/05/10 Javascript
记录vue项目中遇到的一点小问题
2019/05/14 Javascript
微信小程序实现列表的横向滑动方式
2020/07/15 Javascript
Vue.js使用axios动态获取response里的data数据操作
2020/09/08 Javascript
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
python调用opencv实现猫脸检测功能
2019/01/15 Python
Tensorflow Summary用法学习笔记
2020/01/10 Python
Python定义一个Actor任务
2020/07/29 Python
css3利用transform变形结合事件完成扇形导航
2020/10/26 HTML / CSS
Linux如何命名文件--使用文件名时应注意
2012/01/22 面试题
什么是虚拟内存?虚拟内存有什么优势?
2016/02/09 面试题
九月份红领巾广播稿
2014/01/22 职场文书
十佳文明家庭事迹
2014/05/25 职场文书
解除劳动合同协议书范本2014
2014/09/25 职场文书
2014年党员自我剖析材料
2014/10/07 职场文书
党员民主评议个人总结
2014/10/20 职场文书
民事答辩状范本
2015/05/21 职场文书
nginx.conf配置文件结构小结
2022/04/08 Servers