【 Spring 全家桶】Spring 相关常用注解

以下内容汇成了一张思维导图,欢迎下载!
https://download.csdn.net/download/weixin_47429870/72029161

IoC

org.springframework.stereotype

@Repository

用于标注数据访问组件,即 DAO 实现类

@Service

用于标注业务实现类

@Controller

用于标注控制层类,通常与 RequestMapping 注解结合使用

@Component

泛指组件,当某个组件不好分类时使用该注解,使用在实体类上,不写 value 的话,bean 名字默认为类名首字母小写


DI

org.springframework.beans.factory.annotation

@Autowired

完成属性/字段注入,注入的是 bean(取代 XML property ref 元素)

@Qualifier(“name”)

当有多个同一类型的 bean 存在时,可以使用该注解进行指定

@Value

完成属性/字段注入,注入的是常量值(取代 XML property value 元素)


SpringMVC

org.springframework.web.bind.annotation

@RestController

等价于 @Controller + @ResponseBody

@ResponseBody

表示该方法的返回值放在响应体中,一般在异步请求中使用,用于获取数据,比如响应 JSON 数据需要用到该注解

@RequestParam

将请求参数绑定到方法参数上,当请求参数名和形参名不一致时可以使用该注解起名

@RequestMapping(“映射路径”)

用来处理请求地址映射的注解,用于类或方法上

@ControllerAdvice
  • 全局异常处理
    在这里插入图片描述

  • 全局数据绑定:用于做一些数据初始化操作

  • 全局数据预处理
    在这里插入图片描述

@ExceptionHandler

用于指明异常的处理类型
在这里插入图片描述

@InitBinder

SpringMVC 并不能对所有类型的参数都进行绑定,该注解则能够对 WebDataBinder 对象进行初始化,WebDataBinder 是 DataBinder 的子类,用于完成表单参数到 JavaBean 属性的绑定

@PathVariable

该注解能够将路径参数从 url 上解析下来,并赋值给接口声明的形参,如果参数路径上的参数名与方法声明形式参数名不一致,则需要明确指定
在这里插入图片描述


SpringBoot

@SpringBootAplication

表示当前类为 SpringBoot 的引导启动类,由 @SpringBootConfiguration、@EnableAutoConfigutation、@ComponentScan 构成

@SpringBootConfiguration

标记当前类为配置类,继承自 @Configuration,将当前类中声明的一个或多个贴有 @Bean 的方法生成并放到 Spring 容器中,实例名为方法名,相当于<beans></beans>

@EnableAutoConfiguration

字面意思即启用自动配置,用于实现自动配置


Java Config

@Configuration

用于定义配置类,声明一个或多个 @Bean 方法,并交由Spring容器管理,以便在运行时为这些bean生成 BeanDefinition 和服务请求

@Bean

贴了该注解的方法返回的对象会交给 Spring 容器管理,相当于<bean></bean>

属性

  • name:用于给bean取别名
  • initMethod:配置bean的初始化方法
  • destroyMethod:配置bean的销毁方法
@ComponentScan

用于扫描贴有 Spring 提供的 IoC、DI 注解,比如 Service、Controller 等,并创建对象放到 Spring 容器中。如果没有明确指明扫描路径,则代表扫描路径为当前类所在包下的所有类

在 Spring 配置类上贴该注解表示开启组件扫描器,默认扫描当前配置类所在的包,也可以自己指定,相当于<content:component-scan>

@PropertySource

加载指定的 properties 配置文件到 Spring 的 Environment中,Environment 接口提供方法去读取配置文件中的值,参数是properties 文件中定义的key值

@ConfigurationProperties

读取系统全局的配置文件

@ImportResource

导入 Spring 配置文件,让配置文件中的内容生效


日期处理注解

@JsonFormat(pattern = “yyyy-MM-dd HH:mm”)

出参格式化
在这里插入图片描述

@DateTimeFormat(pattern = “yyyy-MM-dd HH:mm”)

入参格式化
在这里插入图片描述


定时器

org.springframework.scheduling.annotation

@EnableScheduling

开启对定时任务的支持,贴在类上

@EnableAsync

开启异步事件的支持,贴在类上

@Scheduled

任务调度注解,根据指定执行计划执行方法体逻辑


SpringCloud

@EnableDiscoveryClient

服务注册
在这里插入图片描述

@LoadBalanced

负载均衡
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

正则表达式1951

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值