我想通过Spring Boot外部化我的配置,但我想继续部分使用xml上下文。
我的主类SpringServerApplication.java:
@Configuration @PropertySources(value = {@PropertySource("classpath:/application.properties")}) public class SpringServerApplication { public static void main(String[] args) throws Exception { SpringApplication.run(new Object[] { SpringServerApplication.class, "classpath:ApplicationContextServer.xml" }, args); } }
我将配置放在application.properties中。
在ApplicationContextServer.xml中,我想使用一些这样的参数:$ {user}。
但这行不通。在此先感谢您的帮助。
删除@PropertySourceSpring Boot已经完成的,而是添加@EnableAutoConfiugration并用于@ImportResource导入xml配置文件。
@PropertySource
@EnableAutoConfiugration
@ImportResource
@Configuration @EnableAutoConfiguration @ImportResource("classpath:ApplicationContextServer.xml") public class SpringServerApplication { public static void main(String[] args) throws Exception { SpringApplication.run(new Object[] {SpringServerApplication.class}, args); } }
那应该足以做您想要的。根据xml文件中的内容,您甚至可以删除其中的一些内容(因为Spring Boot可以很容易地为您自动配置资源)。