Spring注解汇总

@Configuration

告诉spring这是一个配置类

@Bean

给容器中注册一个bean类型为返回值类型id默认是方法名,结合@Configuration或者@Component使用。可以导入第三方组件,方法有参数默认从ioc容器获取,可以指定initMethod和destoryMethod方法

@Scope

设置组件作用域protoType多例子 singleton单例(默认)

@Lazy

懒加载(只针对单例有效)

@ComponentScan

包扫描

@ComponentScans

可以配置多个@ComponentScan扫描@TypeFilter指定过滤规则,需要自己实现TypeFilter类

@Conditional({Condition})

按照一定的条件判断,满足条件给容器注入bean,传入Condition数组,使用时需要自己创建类继承Condition然后重写match方法

@Import

快读给容器中导入一个组件
1Import(类名)容器中自动注入这个组件,id默认是组件全类名
2ImportSelector 返回需要导入得组件得全类名数组(实现ImportSelector接口返回数组全路径类名 )
3ImportBeanDefinitionRegistrar 手动注册bean
FactoryBean
工厂bean,交给spring来生产bean到bean的容器中,可以通过前缀&来获取bean本身

@Value

给属性赋值也可以使用spel和外部文件的值

@PropertySource

读取外部配置文件中的k/v保存到运行环境中,结合@Value使用或者使用ConfigurableEnvironment获取

@Profile

结合bean使用默认为default环境,可以通过命令行参数指定来切换环境

@Autowired

1.优先按照类型去容器中找对应的组件
2.按照属性名称作为容器id去找对应的组件

@Qualifier

指定默认组件结合@Autowired使用
1标注在类上Spring创建对象调用构造器创建对象
2.标注在方法上

@Primary

自动装配的时候默认首选bean,配合bean使用

@Resource(jsr250)

按照组件名称进行装配

@Inject(jsr330)

功能和Autowried一致不支持require=false

Bean的生命周期

初始化和销毁
1.通过@bean指定init-method和destory-method
2.通过实现InitalizingBean定义初始化逻辑,实现DisposaleBean实现销毁方法
3.实现BeanPostProcessor接口的后置拦截器放入容器中,可以拦截bean的初始化,并可以
在被拦截的bean的初始化前后做一些处理工作

SpringAop

使用步骤

@EnableAspectJAutoProxy

开启基于注解的aop模式

@Aspect

定义切面类切面类里面定义通知

@PointCut

定义切入点可以写切入点表达式指定哪个方法切入

通知方法

1.@Before 前置通知
2.@After 后置通知
3.@AfterRuturning 最终通知
4.@AfterThrowing 异常通知
5.@Round 环绕通知
JoinPoint
连接点是一个类配合通知使用可以获取切入的点的信息

事务控制

基本步骤
1.配置数据源datasource
2.配置事务管理器来控制事务PlatformTransactionManager
3.@EnableTransactionManager开启基于注解的事务管理功能
4.给方法上面标注@Transaction表示当前方法是一个事务方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值