2011-12-04 4 views

答えて

0

最も簡単な方法は、静的なコンター変数を使用して何らかの種類のBeanを構成し、それがinitzalizeされる頻度をカウントすることです。

Beanが作成されている場合、このカウンタの値が0より大きい場合、このカウンタは強制的に強制され、例外は発生しません。

@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; 
    } 
} 
関連する問題