对于springMVC项目中常用的注解我将通过其实现的流程顺序进行介绍
1.SpringMVC的连接
连接指的是通过路由与前端进行连接,前端传参,后端接受参数并返回页面
1)@RequestMapping: 通过路由进行访问,(支持使用类型的接口访问包含get和post请求等)
延伸出来的还有@PostMapping和@GetMappiing,分别只支持get请求和只支持post请求
2)@Controller:由于前端传来的信息需要在spring中首先被controller层接收,所以与controller层连接需要一个注解,意思是调用后端程序的使用 。这个注解是搭配其他常见注解一起使用的
3)@ResponseBody:由于响应的view默认是静态页面,所以我们如果想做到前后端分离,后端只想返回参数的话需要使用此注解,把响应的body传回给页面
4) @RestController:上两个注解之和,所以当想返回静态页面时只需controller即可,加了Rest默认返回的是参数
2.获取参数
1.获取单个参数
注意的是方法内的参数名必须与传的参数名一致
2.获取多个参数
3.获取对象
注意的是,参数的传递对区分大小写的
4.获取表单参数
传参的形式:
url 传参
form表单传参
ajax传参(会有一个funtion,sucess成功实现函数后会返回一个操作给页面)
必须是body和content-type都是json时才算是ajax传参
如果是form表单则content-type和body都是form表单形式(两者都必须配套使用)
标准的json对象必须要加@RequestBody注解
2.上传文件@RequestPart:
获取和读取cookie和session @CookieValue和@SessionAtrribute
Cookie是浏览器传给后端的,http无状态,把所有的cookie都传给后端,就好像我们每次查询数据时有不同的需求,但是需要页面刷新时或者页面跳转才能实现,但是http没有记录当时的状态,所以只能把所有的cookie都传给后端,作为不同页面的身份标识,后端再把sessionId给cookie作为判断是否输出正确网页的判据
3.获取表头header :
@RequestHeader跟上述注解功能差不多,都是对HttpRequest对象的一层封装,这个注解是获取Header,里面的参数为key,然后通过客户输入或者浏览器自动输入的value相匹配;
4.前端参数重命名:
@RequestParam此时只认t,传time时如果required是true(默认)的话则会报错,false(需要设置)则会传回null。(判断参数是否需要必传)
5.特殊的url和获取其参数的方式
5.springboot热部署
加入依赖
Setting build->compiler,设置项目自动创建,同时设置下一个项目的setting
下一步在代码内部部署
6.请求转发和请求重定向