Java EE5는 서블릿 수명주기에 작용하는 두 가지 주석인 @PostConstruct와 @PreDestroy을 도입하여, 빈이 초기화되기 전과 소기화되기 전에 맞춤형 연산을 가능하게 합니다. 이 글은 주로 @PostConstruct을 설명합니다.
API 사용 지침
다음은 @PostConstruct API 사용에 대한 지침입니다:
PostConstruct 주석은 의존성 주입이 완료된 후 초기화를 수행하기 위해 실행되어야 하는 메서드에 사용됩니다. 이 메서드는 클래스를 서비스에 넣기 전에 반드시 호출되어야 합니다. 의존성 주입을 지원하는 모든 클래스는 이 주석을 반드시 지원해야 합니다. 클래스가 리소스 주입을 요청하지 않더라도, PostConstruct로 주석이 달린 메서드는 반드시 호출되어야 합니다. 이 주석으로 주석을 달 수 있는 방법은 단 하나뿐입니다. PostConstruct 주석을 적용하는 방법은 다음 모든 기준을 준수해야 합니다: EJB 인터셉터의 경우(EJB 명세에 정의된 경우, InvocationContext 객체를 포함하면서) 메서드는 매개변수를 가져서는 안 됩니다; 메서드의 반환 타입은 반드시 공무이여야 합니다; 메서드는 체크된 예외를 던져서는 안 되며; PostConstruct 적용 방법은 공개, 보호, 패키지 프라이비, 프라이빗 등 다양할 수 있습니다; 메서드는 애플리케이션 클라이언트를 제외하고는 정적일 수 없습니다; 이 방법은 최종적일 수 있습니다; 메서드가 체크되지 않은 예외를 던지면, 예외를 처리하고 복구할 수 있는 EJB가 아닌 한 클래스를 서비스에 배치해서는 안 됩니다.
요약하면 다음과 같습니다:
이 주석으로 주석을 달 수 있는 방법은 단 하나뿐입니다;
주석이 달린 메서드는 어떤 매개변수도 가져서는 안 되며;
주석이 달린 메서드는 void의 값을 반환합니다;
주석이 달린 메서드는 체크된 예외를 던져서는 안 되며;
주석이 달린 방법은 반드시 비정적 방법이어야 하며;
이 방법은 한 번만 수행됩니다;
서블렛 실행 흐름도
두 개의 주석을 추가하면 서블렛은 흐름도를 실행할 수 있습니다:
특정 빈의 인스턴스화 과정 동안, 주석이 달린 메서드 @PostConstruct은 구성 메서드 이후, init 메서드 전에 호출됩니다.
면책 조항: Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.
Mail To:help@itsvse.com