1.spring:profile
# 指定环境为dev
spring.profiles.active=dev
2.spring:@Nullable和@Nonnull
如果可以传入NULL值,则标记为@Nullable,如果不可以,则标注为@Nonnull。
3.spring:@Value
该注解的作用是将我们配置文件的属性读出来,有@Value(“${}”)和@Value(“#{}”)两种方式
@Value的值有两类:
① ${ property : default_value }
② #{ obj.property? :default_value }
第一个注入的是外部配置文件对应的property,第二个则是SpEL表达式对应的内容。 那个
default_value,就是前面的值为空时的默认值。注意二者的不同,#{}里面那个obj代表对象。
4.spring:@DependsOn
声明当前bean依赖于另一个bean,所依赖的bean会被容器确保在当前bean实例化之前被实例化。
一般用在一个bean没有通过属性或者构造函数参数显示依赖另一个bean,但实际上会使用到那个bean或者那个bean产生的某些结果的情况。
用法:
- 直接或间接标注在带有@Component注解的类上面。
- 使用@DependsOn注解到类层面仅仅在使用component scanning方式时才有效。
- 如果带有@DependsOn注解的类通过XML方式使用,该注解会被忽略,<bean depends-on="">方式生效。
- 直接或间接标注在带有@bean注解的方法上面。