1)@RequestParam:
请求参数名字修改;
可以required: 指定必须传递这个名字的参数;
2)@RequestBody: 获取请求体整个内容. 不适合get请求,因为get请求是封装到地址栏中;
因此不能写href超链接, 必须写表单提交发起post请求;
获取参数好像用处不大,因为得到请求体后,还要解析出来参数;
在异步时需要用到, json-->对象;
不是拿到某个请求参数,而是拿请求体;
3)PathVarabile: 占位符
理解RSFT风格:
UserController
原来的:
path="/user/save"
save
path="/user/update"
update
path="/user/findAll"
findAll
REST风格:
path="/user" post
save
path="/user" put
update
path="/user" get
findAll
localhost:8080/user post
也就是是同一个地址,但是用不同的请求方式,让不同的方法去执行;
注意:占位符出现了
path="user/{id}" get
findById(id)
localhost:8080/user/10 get
注意: 是直接写10,而不是id=10
好处: 让缓存容易管理. 因为:请求路径一样
WebClient:使用静态方法,直接发请求。 比过滤器简单;
4)@RequestHeader: 用于获取请求消息头;
5)@CookieValue: 拿到Cookie的值
6)@ModelAttribute:
可以放在:
方法上:
没有提交值,本来默认是null,但是我没有提交这个属性想用之前的默认的而不是提交个null;
有返回值类型的:
从数据库中查询完后,存到返回值中
无返回值类型的:
需要用Map
参数上:
7)@SessionAttributes(只能作用于类上):
用于多次执行控制器间的参数共享:
如从这个jsp跳转到另外一个jsp;
Model
存到Request域对象中;
${requestScope}
isELIgnored="false": 不忽略域表达式
作用于类上后:
msg存入到session域对象 ${sessionScope}中, 而不仅仅是${requestScope}中
${msg} 或 ${requestScope.msg}
清空Session域中的数据:
SessionStatus: status.setComplete();
SpringMVC常用注解 及其 理解RESTFUL风格(固定连接 + 请求方式、方便缓存)
猜你喜欢
转载自blog.csdn.net/themagickeyjianan/article/details/105178589
今日推荐
周排行