Spring boot @在方法上自动连接,该方法是否在运行时随机执行?

Spring boot @在方法上自动连接,该方法是否在运行时随机执行?,spring-boot,autowired,Spring Boot,Autowired,我初始化并发现方法的执行是随机的。 但我不知道为什么会这样 代码如下所示,输出顺序有时不同 @Autowired public void test() throws Exception { System.out.println("test():1"); } @Autowired public void test2( MyUserDetialsService userService) throws Exception { System.out.println("test2( MyU

我初始化并发现方法的执行是随机的。 但我不知道为什么会这样

代码如下所示,输出顺序有时不同

@Autowired
public void test() throws Exception {
    System.out.println("test():1");
}
@Autowired
public void test2( MyUserDetialsService userService) throws Exception {
    System.out.println("test2( MyUserDetialsService userService):5");
}
@Autowired
public void a( MyUserDetialsService userService) throws Exception {
    System.out.println("a( MyUserDetialsService userService):2");
}
@Autowired
public void a() throws Exception {
    System.out.println("a():3");
}

执行顺序按字母顺序排列。您可以通过将函数名从test更改为ztest来查看它,您将看到输出将发生更改


我还做了更多的测试,发现有时它不是按字母顺序排列的。这也取决于参数编号。但如果没有参数,它是按字母顺序排列的。您可以在这里看到我的示例

一段代码片段比一张屏幕截图更受欢迎