java-防止覆盖bean的bean定义

前端之家收集整理的这篇文章主要介绍了java-防止覆盖bean的bean定义 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我知道我们可以通过以下方式禁用Spring bean的重载:

  1. GenericApplicationContext.setAllowBeanDefinitionOverriding(boolean b)

Spring Ref

但是,我认为WebApplicationContext不是以编程方式加载的,而是通过我的web.xml文件加载的.然后,如何防止WebApplicationContext中的Spring bean溢出

最佳答案
一种方法(不是特别优雅的方法)是重写默认的WebApplicationContext.在web.xml中:

  1. <context-param>
  2. <param-name>contextClass</param-name>
  3. <param-value>my.package.MyWebApplicationContext</param-value>
  4. </context-param>

哪里

  1. public class MyWebApplicationContext extends XmlWebApplicationContext {
  2. public MyWebApplicationContext() {
  3. super();
  4. this.setAllowBeanDefinitionOverriding(false);
  5. }
  6. }

猜你在找的Spring相关文章