参考文档:https://blog.csdn.net/walkerjong/article/details/7946109

https://www.cnblogs.com/daimajun/p/7152970.html

*)@RequestParam

处理的参数类型:

① 常用来处理简单类型的绑定,通过Request.getParameter() 获取的String可直接转换为简单类型的情况( String--> 简单类型的转换操作由ConversionService配置的转换器来完成);因为使用request.getParameter()方式获取参数,所以可以处理get 方式中queryString的值,也可以处理post方式中 body data的值;

②用来处理Content-Type: 为 application/x-www-form-urlencoded编码的内容,提交方式GET、POST;

Content-Type为'application/x-www-form-urlencoded;' 的含义:最普通的表单提交(get或者post提交都行),非文件上传设置的contentType、非json、非xml 提交时,就是这种content-Type。

content-Type在浏览器的console控制台中,点击network,找到要看的请求,点击这个请求会打开请求的详情,可以看到:

后台的参数接收方式:

 @RequestMapping(value="/saveListParam",method={RequestMethod.POST})
public String saveListParam(@RequestParam List<MedicineVo> medVoList) {
System.out.println("------------------------------into saveListParam");
return "welcome";
}

##)当遇到报错:

报错原因:Content type为'application/x-www-form-urlencoded;' 应该使用@RequestParam接收参数。代码里使用了@RequestBody,所以报错。

*)@RequestBody

处理的参数类型:

①该注解常用来处理Content-Type: 不是application/x-www-form-urlencoded编码的内容,例如application/json, application/xml等

②它是通过使用HandlerAdapter 配置的HttpMessageConverters来解析post data body,然后绑定到相应的bean上的。

  因为配置有FormHttpMessageConverter,所以也可以用来处理 application/x-www-form-urlencoded的内容,处理完的结果放在一个MultiValueMap<String, String>里,这种情况在某些特殊需求下使用,详情查看FormHttpMessageConverter api;

也就是说,@RequestBody接收json、xml等,非常规表单的参数。

*) @ResponseBody

表示:方法返回的结果是Ajax异步请求的结果,比如json。页面不会跳转,而是返回Ajax的data结果。

*)@ModelAttribute

最新文章

  1. jenkins邮件配置
  2. JVM 内部运行线程介绍
  3. centOs安装jdk1.7
  4. 【整理】C#文件操作大全(SamWang)&lt;转&gt;
  5. bzoj 3131: [Sdoi2013]淘金
  6. Erlang数据类型的表示和实现(4)——boxed 对象
  7. webkit,HTML5头部标签
  8. hdu 2243 考研路茫茫——单词情结 ac自动机+矩阵快速幂
  9. windows 删除服务命令
  10. 在asp.net中导出表格Excel数据
  11. cocos2d-x box2d使用调试绘图
  12. 【HTTP 2】启用 HTTP 2(Starting HTTP/2)
  13. postgres的initdb解析——从一次插件升级失败说起
  14. .net 笔试面试总结(3)
  15. flutter 自定义输入框组件
  16. 学习Android过程中遇到的未解决问题(个人笔记,细节补充,随时更新)
  17. https安全协议原理
  18. Android-Kotlin-when&amp;类型推断
  19. bzoj4161: Shlw loves matrixI
  20. 解决多进程中APScheduler重复运行的问题

热门文章

  1. burp intruder模块详解
  2. react找到对象数组中指定的值
  3. Linux下配置JDK环境
  4. nginx在windows下配置反向代理
  5. 猿题库 iOS 客户端架构设计(原文地址:http://gracelancy.com/blog/2016/01/06/ape-ios-arch-design/)
  6. R语言parse函数与eval函数的字符串转命令行及执行操作
  7. 斯托克斯公式(Stokes&#39; theorem)
  8. 计蒜客 蓝桥模拟 F. 结果填空:数独
  9. 64bit机器编译32bit汇编
  10. python dict字典常用操作