Rumah  >  Artikel  >  php教程  >  详解springmvc 接收json对象的两种方式

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

高洛峰
高洛峰asal
2017-01-04 09:07:371181semak imbas

最近学习了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";
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。

更多详解springmvc 接收json对象的两种方式相关文章请关注PHP中文网!


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn