@RequestBody和Json之间的关系
json
适用于现代 C++ 的 JSON。
项目地址:https://gitcode.com/gh_mirrors/js/json
免费下载资源
·
在使用springmvc的时候,后台@RequestBody接受的是一个json格式的字符串,一定是一个字符串。
我们可以通过@RequestBody Map
@RequestMapping(value="/queryAccountList.do",produces="application/json;charset=UTF-8")
@ResponseBody
public HashMap<String, Object> queryAccountList(@RequestBody Map<String, Object> paramsMap){
System.out.println("paramsMap="+paramsMap);
String channel= (String) paramsMap.get("channel");
String function_code=(String) paramsMap.get("function_code");
Map<String, Object> reqParam=(Map<String, Object>)paramsMap.get("data");
当前端调用我们的接口时,传入json字符串,就转为了map对象。这里主要是@RequestBody的底层实现,我们不讨论。
json对象和json字符串的区别:
var person={“name”:”zhangsan”,”sex”:”男”,”age”:”24”}//json对象
var person=’{“name”:”zhangsan”,”sex”:”男”,”age”:”24”}’;//json字符串
json对象转为json字符串,调用stringify方法:
var person={"name":"zhangsan","sex":"男","age":"24"};//json对象
var personString = JSON.stringify(person);
alert(personString);
SpringMVC接受json字符串类型。
在SpringMVC中基于REST开发时,前端传入后台的应该是一个json格式的字符串,而不是一个json对象
GET、POST方式提时, 根据request header Content-Type的值来判断:
application/x-www-form-urlencoded, 可选(即非必须,因为这种情况的数据@RequestParam, @ModelAttribute也可以处理,当然@RequestBody也能处理);
multipart/form-data, 不能处理(即使用@RequestBody不能处理这种格式的数据);
其他格式, 必须(其他格式包括application/json, application/xml等。这些格式的数据,必须使用@RequestBody来处理)。
GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e
2 个月前
8c391e04
5 个月前
更多推荐
已为社区贡献2条内容
所有评论(0)