spring mvc中@requesMapping的可配置参数和标注的处理方法的可选参数
@RequestMapping的可选参数 value:表示需要匹配的url的格式。
method:表示所需处理请求的http 协议(如get,post,put,delete等),可选值为RequestMethod这个enum的值。
params:格式为”paramname=paramvalue” 或 “paramname!=paramvalue”。不带参数则表示paramvalue可以为任意值。
如params = {"param1=1","param2!=2","param3"},表示对应的url必须包括param1,param2,param3三个参数,其中param1的值必须为1,param2的值不能为2,param3的值可以为任意值。
headers:用来限定对应的reqeust请求的headers中必须包括的内容,例如
headers={"Connection=keep-alive"}, 表示请求头中的connection的值必须为keep-alive。
使用@requesMapping标注的处理函数包括的可选参数,除了HttpServletRequest, HttpServletResponse, HttpSession这些web应用中常见的参数及之前提到过的@PathVariable外,还可以包括以下可选的参数,其中大部分参数的顺序没有特殊要求的。 java.util.Locale
当前请求所属的区域设置。 java.io.InputStream或java.io.Reader
用来读取request content,相当于 request.getInputStream()或request.getReader(); java.io.OutputStream或java.io.Writer
用来生成reponse content,相当于response.getOutputStream()或response.getWriter()。 java.security.Principal
当前认证了的用户 WebRequest或NativeWebRequest
Spring 对request,response,session等web元素封装后的对象 HttpServletRequest/response/HttpSession等原始的web对象 java.util.Map 或 org.springframework.ui.Model或org.springframework.ui.ModelMap
用来存放domain model的map结构。 HttpEntity<?>
可用来读取http请求的header和 body内容,注意因为httpentity,@RequestBody,Reader这三种类型的参数都是通过inputstram来读取httpbody的数据的,而inputstream流不能反复读取,因此这三种类型的参数不能放在一起使用。而且在没有设置content-type或没有设置相应的messageconverter的情况下,都会报错。 Command 或 form objects
通过spring 的databinding机制将request请求中的参数自动转换为对应的java bean实例。 Errors或BindingResult
对command或form objects值的校验结果。此参数必须紧跟在需校验的command或form object参数后面。因为databinding可以允许将输入参数和多个java bean 进行绑定(也就是说我们可以把输入request param转换成为多个java 对象)。 SessionStatus
Session的状态。当使用@SessionAttributes来标注请求需要session中对应的值时,在处理结束时,使用SessionStatus. setComplete()来将session设置为时效。 @RequestParam
将request参数和handler method参数做绑定。例如
@RequestParam(value="username",defaultValue="winzip",required=false) String name
表示将request中的username参数和handler method中的name参数绑定,缺省值为”winzip”,request请求中可以不传递此参数 @RequestHeader
将handler method中的参数与request header中的值绑定,例如
@RequestHeader(required=false,value="User-Agent") String ua
表示将header中的"User-Agent"与ua这个入参绑定。 @RequestBody
将handler method中的参数与request context body中的值绑定
例如
@RequestBody String u
表示将request body中的内容与u这个入参绑定。 @CookieValue
将handler method中的参数与cookie中的值绑定
例如
@CookieValue(value="JSESSIONID",required=false) String jssionid @ModelAttribute
将handler method中的参数与对应的类型绑定,名称缺省为类名(首字母小写),如果ModelAttribute指定了值则以该值作为model attribute name。
例如
@ModelAttribute("ooxx") User u
则在modelmap中创建了一个键值为ooxx的model attribute。
@ModelAttribute User u 或 User u
在modelmap中创建了一个键值为user的model attribute
spring mvc中@requesMapping的可配置参数和标注的处理方法的可选参数的更多相关文章
- Spring MVC中 log4j日志文件配置相对路径
log4j和web.xml配置webAppRootKey 的问题 1 在web.xml配置 <context-param> <param-name>webAppRootKey ...
- Spring MVC中forward请求转发2种方式(带参数)
Spring MVC中forward请求转发2种方式(带参数) http://www.51gjie.com/javaweb/956.html
- Spring MVC 中的基于注解的 Controller【转】
原文地址:http://my.oschina.net/abian/blog/128028 终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 H ...
- Spring MVC中基于注解的 Controller
终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法以响 ...
- Spring MVC 中的基于注解的 Controller(转载)
终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法 ...
- Spring MVC 中的 forward 和 redirect
Spring MVC 中,我们在返回逻辑视图时,框架会通过 viewResolver 来解析得到具体的 View,然后向浏览器渲染.假设逻辑视图名为 hello,通过配置,我们配置某个 ViewRes ...
- Spring MVC中各个filter的用法
转载:http://blog.csdn.net/qyp1314/article/details/42023725 Spring MVC中各个filter的用法 2014-12-19 09:08 105 ...
- Spring MVC中的HandlerMapping与HandlerAdapter
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- Spring mvc 中使用 kaptcha 验证码
生成验证码的方式有很多,个人认为较为灵活方便的是Kaptcha ,他是基于SimpleCaptcha的开源项目.使用Kaptcha 生成验证码十分简单并且参数可以进行自定义.只需添加jar包配置下就可 ...
随机推荐
- 基于springboot的spring JSR validation 后台参数验证
springboot集成JSR参数校验: 1. 导入maven <dependency> <groupId>org.springframework.boot</group ...
- 关于Hyper-V备份的四大注意事项
尽管Hyper-V备份相对简单,但备份管理员仍需注意四大问题.这四方面的问题在创建备份时可能不太重要,但在备份恢复时影响甚大. 1.对于虚拟机来说不仅意味着虚拟磁盘 就目前来看,企业在执行Hyper- ...
- 如何更改linux文件目录拥有者及用户组
查看用户和组 1 首先对于经验操作之前,我们先看下当前系统下的用户和组.whoami 查看当前登陆用户 2 Passwd文件存储当前系统所有用户,而组文件/etc/group记录. 3 一个用户可 ...
- Rete算法
RETE算法介绍一. rete概述Rete算法是一种前向规则快速匹配算法,其匹配速度与规则数目无关.Rete是拉丁文,对应英文是net,也就是网络.Rete算法通过形成一个rete网络进行模式匹配,利 ...
- Mac 卸载MySql的方法
sudo rm /usr/local/mysql sudo rm -rf /usr/local/mysql* sudo rm -rf /Library/StartupItems/MySQLCOM su ...
- [Git] git merge之squash
reference : https://www.cnblogs.com/ungshow/p/3515161.html 看CM源码时,发现历史记录里有很多squash,于是google了解了一下. Gi ...
- 开篇-QT完全手册
嵌入式工具Qt的安装与使用 摘要 Qt是Trolltech公司的一个产品.Trolltech是挪威的一家软件公司,主要开 发两种产品:一种是跨平台应用程序界面框架:另外一种就是提供给做嵌入式Linux ...
- mac的cpu处理器个数、核数、超线程
处理器:1个 每个核的L2缓存大小:256KB L3缓存大小:3MB 核数:2个 2个核却有4个CPU:使用了超线程技术--双核四线程 macOS,查看CPU信息:sysctl machdep.cpu ...
- HTTP协议状态码详解(HTTP Status Code)(转)
原文链接:HTTP协议状态码详解(HTTP Status Code) 使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成 ...
- 系统对接API调用
在与公司外部系统对接时,API接口一般采用REST风格,对外暴露HTTP服务.只需要将入参封装好,并发起HTTP请求即可.具体请求流程如下图所示: 数据格式 API调用参数分为系统参数和业务参数,请求 ...