1. @ControllerAdvice
@ControllerAdvice用来声明一些全局性的东西,最常见的是结合@ExceptionHandler注解用于全局异常的处理。他有三种用法:
- @ExceptionHandler注解标注的方法:表示如果Controller中任何一个方法发生异常,就会被注解了@ExceptionHandler的方法拦截到。然后进行异常类匹配并执行对应的方法,如果都没有匹配到异常类,则采用近亲匹配的方式;
- @InitBinder注解标注的方法:用于请求中注册自定义参数的解析,从而达到自定义请求参数格式的目的;
- @ModelAttribute注解标注的方法:表示此方法会在执行目标Controller方法之前执行 。
2. @Valid
用于验证变量是否符合要求,直接加在变量user之前,在变量中添加验证信息的注解,当不符合要求时就会在方法中返回message的错误提示信息。
3. @CookieValue
用于将Cookie中的值映射到功能处理方法的参数上,有三个参数:
* value:参数名称;
* required:是否必须;
* defaultValue:默认值。
4. @RequestParam
@RequestParam是传递参数的,用于将请求参数区数据映射到功能处理方法的参数上,有三个参数;
* value:参数名字;
* required:是否必须,默认是true,表示请求中一定要有相应的参数,否则将报404错误码;
* defaultValue:默认值,表示如果请求中没有同名参数时的默认值,默认值可以是SpEL表达式.
5. @Configuration
@Configuration标注这是一个配置类,类中所有带 @Bean 注解的方法都会被动态代理,因此调用该方法返回的都是同一个实例。
6. @Component/@Controller/@Service/@Repository
@Component将普通的组件注入到spring容器进行管理,@Controller针对控制层的组件,@Service针对服务层,@Repository针对持久层,虽然都是将组件注册到容器,但各自有一些特殊的功能。例如用@Controller注解了一个类,那么Spring就会自动的去扫描它里面的@RequestMapping,换成别的注解代替@Controller就不行。
7. @Bean
@Bean作用于方法上,是使用注解方法的返回对象给IOC容器管理,而且所在类必须被@Configuration或@Component注解
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端