spring注解(三)

@Resource

JSR250规范的注解, 可以和@Autowired注解一样实现自动装配功能, 默认按照组件名称进行装配的

不支持@Primary的功能,也不支持@Autowired(required = false)功能

通过name属性指定需要装配的组件id

 

@Inject

JSR330规范的注解,需要导入javax.inject的包,功能和@Autowired一样

但是不能使用@Autowired(required = false)功能

 

@Profile

spring为我们提供的可以根据当前环境,动态的激活和切换一系列组件的功能

不指定,任何环境下都能注册这个组件

指定环境了,必须在指定环境下才注册组件

默认是default环境

 

1. 使用命令行动态参数,在虚拟机参数位置加载 -Dspring.profiles.active = test

2. 代码的方式激活目标环境

 

AOP动态代理

指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式

前置通知(@Before):在目标方法运行之前运行

后置通知(@After):在目标方法运行结束之后运行, 无论方法是正常结束还是异常结束

返回通知(@AfterReturning):在目标方法正常返回之后运行 returning = 用来接收返回值的参数

异常通知(@AfterThrowing):在目标方法出现异常以后运行 throwing = 用来接收异常值的参数

环绕通知(@Around):动态代理,手动推进目标方法运行

可以在通知方法里面加入joinPointer参数,拿到接入点的传参,返回值,异常等信息

joinpointer必须出现在参数的第一位,否则将无法使用

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值