java - spring @configuration 类什么时候执行?

标签 java spring

那么 @configuration 类到底何时执行以及它的范围是什么?

每个 session 一次吗?每个整个应用程序一个?但我的下一个问题是bean执行后返回到哪里?也许这段代码可以帮助您更好地理解我的意思。

@Configuration
@PropertySource("classpath:application.properties")
public class AppConfig {
   @Autowired
   Environment env;

   @Bean
   public DBConnection testBean() {
     DBConnection testBean = new DBConnection();
       testBean.setName(env.getProperty("testbean.name"));
       return testBean;
   }
}

那么这个 DBConnection 或多或少什么时候有效/启动?

最佳答案

一个 @Configuration 带注释的类就是这样,一个用 @Configuration 注释的类注解。它本身什么也不做。

您需要一些东西来评估和处理类(class)。这是通过引导完成的。您有三个选择

  1. 使用 AnnotationConfigApplicationContext 注册类(class)实例。
  2. 将类指定为 <bean>在 XML 配置中具有相应的启用 XML ApplicationContext .
  3. 将类放入经过组件扫描的包中。

这些选项的详细信息请参见 javadoc更详细的信息,请参见 Spring IOC documentation .

您在 @Configuration 中声明的 Bean类活只要有其相应的范围。您的testBean bean 具有单例作用域,因此与包含的 ApplicationContext 一样长。 .

关于java - spring @configuration 类什么时候执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34097164/

相关文章:

java - 使用 Tycho 构建和部署仅更改的插件

java - 读取hadoop序列文件时出现IOException

java - 为什么 OpenJDK 在 Atmel AT91SAM9G25 SoC 板上运行速度如此之慢?

spring - 我如何区分提供 404 的 Apache Tomcat 和我在 tomcat 上返回 404 的应用程序?

java - 为什么使用此 WSDL 时我的 SOAP 请求始终为空?

spring - NoHandlerForCommandException 与 axon-spring-boot-starter

java - 当我在 Java 8 中使用函数时使用一元运算符和二元运算符

java - Twilio TaskRouter 工作人员 session

spring - 通过 yaml 或 properties 登录 Elasticsearch

java - 捕获主线程中工作线程创建的异常