目录
一.RequestParam把请求中指定名称的参数给控制器中的形参赋值
五.CookieValue指定cookie名称的值传入控制器方法参数
六.ModelAttribute指定当前方法在控制器方法之前执行、获取指定的数据给参数赋值
七.SessionAttribute多个执行控制器方法间的参数共享
一.RequestParam把请求中指定名称的参数给控制器中的形参赋值
- 作用:把请求中指定名称的参数给控制器中的形参赋值。
- 属性:
- value和name:请求参数中的名称
- required:请求参数中是否必须提供此参数。默认值:true。表示必须提供,如果不提供将报错。
- 使用示例:
- name=”name“ name字符串表示请求参数的字段名称。
二.RequestBody获取请求体内容
- 作用:用于获取请求体内容。直接使用得到是key=value&key=value...结构的数据(get不适用,get没有请求体)
- 属性
- requird:是否必须有请求体。默认值是:true。当取值为true时,get请求方式会报错。如果取值为false,get请求得到是null。
- 示例
三.PathVariable绑定url中的占位符
- 作用:
- 绑定url中的占位符。例如:请求url中/delete/{id},这个{id}就是url占位符。
- url支持占位符是spring3.0之后加入的。是springmvc支持rest风格URL的一个重要标志。
- 属性:
- value:用于指定url中占位符名称。
- required:是否必须提供占位符。
- REST风格URL
- restful的优点:
- 结构清晰、符合标准、易于理解、扩展方便。
- restful的简单使用介绍
- 他会根据请求方式在访问同一url情况下访问不同后台方法
- 比如
- /user/1 GET方式 访问findByid方法
/user/1 DELETE方式 访问Deleteid方法
/user/1 PUT方式 访问updateid方法
/user/1 POST方式 访问saveid方法- 示例:
- <a href="testPathVariable/10"/>
- 此时id的值已经被赋值为sid的值也就是传入的url中10的值
四.RequestHeader获取请求消息头
- 作用:
- 获取请求消息头
- 属性:
- value:提供消息头名称
- required:是否必须有此消息头
- 实际开发不怎么用
- 示例:
设置需要获取的请求头名称。
五.CookieValue指定cookie名称的值传入控制器方法参数
- 作用:
- 用于把指定cookie名称的值传入控制器方法参数
- 属性:
- value:指定cookie的名称
- required:是否必须有此cookie
- 示例
- JSESSIONID是session的key所以每个浏览器都是有的
六.ModelAttribute指定当前方法在控制器方法之前执行、获取指定的数据给参数赋值
- 作用:
- 用于修饰方法和参数
- 修饰在方法上:
- 当前方法在控制器方法之前执行,方法可有返回值,也可没有。
- 修饰在参数上:获取指定的数据给参数赋值。
- 属性:
- value:用于获取数据的key。key可以是pojo属性名称,也可以是map结构的key。
- 应用场景:
- 当表单提交的数据缺少值,可以使用此方式将值先从数据库获取。
- 示例:
- 1.修饰有返回值的方法,并赋值
- 2.基于map修饰没有返回值的方法,在参数上修饰属性赋值
七.SessionAttribute多个执行控制器方法间的参数共享
- 作用:
- 用于多个执行控制器方法间的参数共享
- 属性:
- value:用于制定存入的属性名称
- type:用于制定存入的数据类型
- 扩展:
- 搜索Model接口它有个ExtendeModelMap实现类,该实现类继承了ModelMap,ModelMap又继承了LinkedHashMap<String,Object>,该表示Model存储的数据是map集合
- 示例:
- 1.存入数据到request
- 2.在类上修饰SessionAttributes将该数据存储到session中
- 3.通过ModelMap获取session中的值
- 4.清楚session中的值