我有两种情况:
ApplicationContext context1 = ...
ApplicationContext context2 = ...
我想将context2
添加到context1
。可能吗?我的意思是以编程方式做到这一点。
答案 0 :(得分:0)
不知道你为什么要这样做:
ApplicationContext context1 = ...
ApplicationContext context2 = ...
以上选项将创建两个独立的弹簧IoC容器。正如@Konrad所说,你不能以这种方式合并。
如果你有很多弹簧上下文文件,那么你可以:
String[] contextFiles = {"/firstContextFile.xml",
"/secondContextFile.xml",
"/thirdContextFile.xml"};
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(contextFiles);
或者
您可以在firstContextFile.xml
中添加另一个弹簧资源:
<import resource="classpath:secondContextFile.xml" />
<import resource="classpath:thirdContextFile.xml" />
然后用这个加载spring上下文:
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("/firstContextFile.xml");