@Order注解,用来控制配置类的加载顺序
实例
package com.user.service;
public class AService {
}
package com.user.service;
public class BService {
}
package com.user.config;
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.uer.config;
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.user.test;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class OrderMain {
public static void main(String[] args) {
AnnotationConfigApplicationContext context =
new AnnotationConfigApplicationContext("com.uer.config");
}
}
输出结果:
BService 加载了
AService 加载了
因为BService 的@Order(1),所以先打印出来