2011-12-04 2 views

답변

0

가장 쉬운 방법은 initzalized 빈도를 세는 static conter 변수를 사용하여 일종의 bean을 구성하는 것입니다.

빈이 생성되면이 카운터의 값이 0보다 크면이 값은 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; 
    } 
} 
관련 문제