JavaEE——SpringMVC中的常用注解

目录

1、@RestController

(1)、@Controller

(2)、@ResponseBody

2、RequestMappping

(1)、定义

(2)、使用

【1】、修饰方法

【2】、修饰类

【3】、指定方法类型

【4】、简化版指定方法

(3)、获取参数

【1】、传递单个/多个参数

【2】、传递对象

3、@RequestParam

4、@RequestBody

5、@PathVariable

6、@RequestPart

7、@CookieValue

8、@SessionAttribute

9、@RequestHeader


1、@RestController

@RestController = @ResponseBody + @Controller + ......

(1)、@Controller

@使用Controller的注解可以声明该类为 Spring MVC 中的Controller类,分发处理器将会扫描使用该注解类的方法,并检测该方法是否使用了@RequestMapping 注解。

(2)、@ResponseBody

默认请求下Spring MVC 和 Spring Boot 返回的是视图都是前后端分离的,后端只需要返给给前端数据,此时我们就需要使用 @ResponseBody 注解来处理。@ResponseBody 返回的值如果是字符会转换成 text/html,如果返回的是对象则会转换成 application/json 再返回给前端。@ResponseBody 可以用来修饰方法或类,修饰类表示类中的所有方法都会返回 html或json。
综上所述我们就可以直接使用 @RestController 的注解来代替 @ResponseBody 和@Controller 来简化操作。

2、RequestMappping

(1)、定义

@RequestMapping 是 Spring Web 中最常被用到的注解之一,它是用来注册接口的路由映射的。而路由映射则是指当用户访问一个 url 时,将用户的请求对应到程序中某个类的某个方法的过程。

(2)、使用

【1】、修饰方法

【2】、修饰类

@RequestMapping 既可修饰类也可以修饰方法。当同时修饰类和方法时,访问的地址为类注解名 / 方法注解名

【3】、指定方法类型

可以通过method方法来指定类型:GET、POST 、PUT......

【4】、简化版指定方法

@GetMapping("/f4")=@RequestMapping(value = "/f4",method = RequestMethod.GET)

POST 、PUT等也可以使用相同的简化方法

(3)、获取参数

【1】、传递单个/多个参数

【2】、传递对象

3、@RequestParam

如果前端的参数是一个非必传的参数,我们可以使用 @RequestParam 来重命名传输过来的参数,此外使用时需要通过设置 @RequestParam 中的 required=false 来避免不传递时报错。

4、@RequestBody

可以通过使用 @RequestBody 注解来接收json对象。

5、@PathVariable

可以通过@PathVariable来获取url中的参数

6、@RequestPart

可以通过 @RequestPart 注解来上传文件,并保存文件位置

7、@CookieValue

可以通过 @CookieValue 注解来更为简洁的获取Cookie

8、@SessionAttribute

可以通过 @SessionAttribute 注解来更为简洁的获取 Session

9、@RequestHeader

可以通过 @RequestHeader 注解来更为简洁的获取 Header

相关推荐
a程序小傲几秒前
京东Java面试被问:Spring拦截器和过滤器区别
java·面试·京东云·java八股文
2401_871260021 小时前
Java学习笔记(二)面向对象
java·python·学习
是梦终空2 小时前
计算机毕业设计252—基于Java+Springboot+vue3+协同过滤推荐算法的农产品销售系统(源代码+数据库+2万字论文)
java·spring boot·vue·毕业设计·源代码·协同过滤算法·农产品销售系统
丿BAIKAL巛2 小时前
Java前后端传参与接收全解析
java·开发语言
cc蒲公英2 小时前
javascript有哪些内置对象
java·前端·javascript
guslegend2 小时前
Spring AOP高级应用与源码剖析
java
Rover.x2 小时前
head table is mandatory
java·apache
yanghuashuiyue2 小时前
Java过滤器-拦截器-AOP-Controller
java·开发语言
shoubepatien2 小时前
JAVA —— 03
java·jvm
a努力。2 小时前
【基础数据篇】数据等价裁判:Comparer模式
java·后端