如何在应用程序上下文中注入环境

问题描述 投票:0回答:2

我目前正在使用遗留代码,我想从环境中读取一些属性。我知道使用 Spring Boot 可以轻松完成此操作:

@Autowired
Environment environment;

但是,由于我使用 application-context.xml 文件连接所有组件,所以我不知道如何在那里连接环境,

<bean name="myBean" class="com.acme.MyClass">
???
</bean>
java spring
2个回答
4
投票

感谢您的帮助@volveira89 @rmlan

使用 xml 文件,这是有效的:

<bean name="myBean" class="com.acme.MyClass">
    <!-- below is (starts with lowercase letter) ... short name of 'org.springframework.core.env.Environment' -->
   <constructor-arg ref="environment"/>
</bean>

0
投票

看来您没有 Spring XML 配置经验。您应该看看 Spring 团队的这个示例:https://spring.io/blog/2011/01/04/green-beans-getting-started-with-spring-mvc/

您的 application-context.xml 中需要类似的内容:

<!-- Scans within the base package of the application for @Components 
to configure as beans -->
<!-- @Controller, @Service, @Configuration, etc. -->
<context:component-scan base-package="xyz.sample.baremvc" />

<!-- Enables the Spring MVC @Controller programming model -->
<mvc:annotation-driven />

现在你的,

@Autowired 
Environment environment 

应该可以!

© www.soinside.com 2019 - 2024. All rights reserved.