如何确保弹簧配置只能加载一次?

时间:2011-12-04 10:57:35

标签: spring

我想知道如何确保只加载一次spring配置文件。有任何设置来实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

最简单的方法是使用静态conter变量配置某种bean,计算初始化的频率。

如果创建了bean,那么这个计数器会大于零,那么这会限制它的声音,并且应该例外。

@Component
public OnlyOneInstanceGuard() {

   private static int instanceCounter = 0;


   public OnlyOneInstanceGuard() {
      if(!isFirstInstance) {
         throw new RuntimeException(
            "is not the first instance, let the spring context crash!");
      }
   }

   private syncronized isFirstInstance() {
       instanceCounter++;
       return instanceCounter == 1;
   }
}