史上最全面的常用SpringBoot注解宝典

表格中列出了springboot,spring框架自带的常用注解

注解 使用位置 描述
@Configuration 相当于传统的xml配置文件,通过@Configuration类作为项目的配置类,可称JavaConfig
@EnableAutoConfiguration 开启SpringBoot自动配置
@ComponentScan 自动扫描注册组件
@SpringBootApplication @Configuration+@EnableAutoConfiguration+@ComponentScan
@Controller 描述控制层类,自动扫描后,被注册。
@Service 描述业务层类,自动扫描后,被注册。
@Repository 描述DAO层类,自动扫描后,被注册。
@Component 泛指组件,自动扫描后,被注册。
@ResponseBody 类,方法 方法返回结果写入到response body中,一般用于构建RESTful的api
@RestController @Controller+@ResponseBody
@RequestMapping 类,方法 配置路由,负责URL到Controller中的具体方法的映射
@GetMapping 方法 相当于@RequestMapping(method=RequestMethod.GET)
@PostMapping 方法 相当于@RequestMapping(method=RequestMethod.POST)
@PathVariable 方法参数 获取URL路径中的动态参数值,主要用于RESTful
@Autowired 除类 按类型自动导入依赖
@Qualifier 除类 配合@Autowired一起使用,按名称自动导入依赖
@RequestBody 方法参数 用来获取请求中的json对象
@RequestParam 方法参数 用来获取URL中的请求参数
@Import 导入其他配置类
@ImportResource 导入加载xml配置文件
@Bean 方法,注解 相当于xml中的bean标签,方法名为id,方法参数为引入相关类的依赖
@Primary 方法,类 一个接口多个实现类,只有标注了@Primary的类,才被依赖注入
@Value 除类,构造方法 注入配置文件的属性值
@PropertySource 引入properties配置文件,把数据存储到Spring的 Environment中
@ConfigurationProperties 类,方法 把指定配置文件的前缀属性值,自动封装在类中
@Order 类,方法,属性 加载顺序,值越小越先加载
@Scope 类,方法 类的范围,默认单例
@EnableTransactionManagement 开启事务管理
@Transcational 类,方法 使用事务
@EnableCaching 开启缓存
@Cacheable 类,方法 缓存数据
@CacheEvict 类,方法 删除缓存
@CachePut 类,方法 更新缓存
@CacheConfig 统一配置缓存
@EnableScheduling 开启对计划任务的支持
@Scheduled 方法,注解 声明一个计划任务
@ControllerAdvice 包含@Component,增强类,一般与@ExceptionHandler、@InitBinde、@ModelAttribute搭配使用
@ExceptionHandler 方法 捕获异常类
@InitBinde 方法 主要用来自定义格式化请求参数
@ModelAttribute 方法 其注解的方法将在Controll方法之前执行
@DependsOn 类,方法 控制bean加载顺序,先加载@DependsOn中的bean
@ConditionalOnBean 类,方法 当容器里面有指定的 Bean 的条件下注册类,一般与@Bean,@Component一起使用,以下几个Conditional也一样
@ConditionalOnClass 类,方法 当类路径下有指定的类的条件下
@ConditionalOnExpression 类,方法 基于SpEL表达式作为判断条件
@ConditionalOnJava 类,方法 基于JVM版本
@ConditionalOnJndi 类,方法 在JNDI存在的条件下查找指定的位置
@ConditionalOnMissingBean 类,方法 当容器里没有指定的 Bean 的情况下
@ConditionalOnMissingClass 类,方法 当类路径下没有指定的类的条件下
@ConditionalOnNotWebApplication 类,方法 当前项目不是web项目的条件下
@ConditionalOnProperty 类,方法 指定的属性是否等于指定的值
@ConditionalOnResourcce 类,方法 类路径下是否有指定的值
@EnableAsync 开启异步任务的支持
@Asyns 类,方法 声明一个异步任务
@Profile 类,方法 为不同环境下使用不同的配置

你可能感兴趣的:(史上最全面的常用SpringBoot注解宝典)