Spring3.0新特性的bean加载控制@DependsOn和@Lazy

1.@DependsOn @Lazy

@DependsOn用于强制初始化其他Bean。可以修饰Bean类或方法,使用该Annotation时可以指定一个字符串数组作为参数,
每个数组元素对应于一个强制初始化的Bean。

@DependsOn({"steelAxe","abc"})
@Component
public class Chinese implements Person{
   //codes here
}

@Lazy用于指定该Bean是否取消预初始化。主要用于修饰Spring Bean类,用于指定该Bean的预初始化行为,
使用该Annotation时可以指定一个boolean型的value属性,
该属性决定是否要预初始化该Bean。

@Lazy(true)
@Component
public class SteelAxe implements Person{
   //codes here
}

若两个同时存在,则@Lazy失效,先加载steelAxe,后加载chinese

2.@Order

注解@Order或者接口Ordered的作用是定义Spring IOC容器中Bean的执行顺序的优先级,而不是定义Bean的加载顺序,Bean的加载顺序不受@Order或Ordered接口的影响

发布了54 篇原创文章 · 获赞 28 · 访问量 4239

猜你喜欢

转载自blog.csdn.net/qq_37174887/article/details/102574384