本文共 1253 字,大约阅读时间需要 4 分钟。
@Order注解主要用来控制配置类的加载顺序
示例代码:package com.runlion.tms.admin.constant;public class AService {}package com.runlion.tms.admin.constant;public class BService {}
package com.runlion.tms.admin.constant;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.core.annotation.Order;@Configuration@Order(2)public class AConfig { @Bean public AService AService() { System.out.println("AService 加载了"); return new AService(); }}package com.runlion.tms.admin.constant;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.core.annotation.Order;@Configuration@Order(1)public class BConfig { @Bean public BService bService() { System.out.println("BService 加载了"); return new BService(); }}
测试类:
package com.runlion.tms.admin.constant;import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class OrderMain { public static void main(String[] args) { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext("com.runlion.tms.admin.constant"); }}
输出结果:
BService 加载了 AService 加载了因为BService 的@Order(1),所以先打印出来
转载地址:http://soazi.baihongyu.com/