스프링 프레임 워크에 뭐든지 같은 @PreDestroy
?거기에 @predestroy와 같은 것이 성 윈저처럼 봄에있다.
답변
다음 Spring은 빈을 destrying 전에
void destroy() throws Exception;
메소드를 호출합니다.
그건 한 가지 방법이고, 다른 하나는 bean이 주어진 인터페이스를 구현할 필요가 없을 때입니다. 당신의 ConfigurationSupport 클래스 중 하나에서 당신의 bean은 @Bean 어노테이션을 가진 pulic 메소드로 정의되어야합니다.
@Bean (destroyMethod="yourDestroyMethod")
public YourBean yourBean() {
YourBean yourBean = new YourBean();
return yourBean;
}
방법 "yourDestroyMethod는"YourBean.class에 정의되어야하고 봄은 빈을 파괴하기 전에 호출합니다. 더 많은 정보를 들어
는 봄 문서를 참조하십시오 Destruction callbacks
UPDATE
세 번째 방법을 ... 나는 심지어 "이 될 것 더 나은 방법에서 지정할"초기화 메소드 "를 말하고 것 bean의 "destroy-method"와 같이 ... mkyong.com/spring/spring-init-method-and-destroy-method-example
이것은 타사 종속성 bean의 문제점을 해결하고 불필요한 Spring 인터페이스를 해방시킵니다.
알 수는 없지만 @PostConstruct 및 @PreDestroy 주석이 있다는 것을 알았습니다. 참조 : http://static.springsource.org/spring/docs/3.0.x/reference/beans.html#beans-postconstruct-and-predestroy-annotations – davorp
@PostConstruct와 @PreDestroy가 다른 것보다 훨씬 뚜렷하다는 것을 알았습니다. 이런 종류의 일을하는 방법; 그것은 마술을 최소화합니다. –
이것은 내가 찾고 있었던 것이다! 설명서는 DisposableBean과 @PreDestroy에 대해 이야기하지만, org.apache.commons.dbcp.BasicDataSource와 같은 타사 클래스에 대해이 코드를 어떻게 지정할 수 있는지 궁금합니다. 매우 감사합니다! –
표준 JDK @PreDestroy
으로 메소드에 주석을 추가하는 것과 같은 의미입니까? 이는 스프링에서 일반적으로 충분하며 일반적으로 XML의 빈 선언에 destroy-method
속성을 사용하는 것보다 낫습니다. 당신이해야 할 일은 다음과 같습니다.
<context:annotation-config/>
구성 파일에는 Spring이 나머지를 처리합니다.
표준 .NET IDisposable.Dispose()
방법이 있습니다. 나는 봄을 알지 못한다. 그러나 빠른 인터넷 검색에서 @predestroy는 거의 같은 개념이다. 당신은 DisposableBean 표시 인터페이스를 구현하는 bean을 정의하면
세 가지 방법이 있습니다.
내 faivorite이 @PreDestroy 방법입니다 위의 XML에서
@PreDestroy 태그
파괴-방법은
DisposableBean 표시 인터페이스 명시된 바와 같이.
유 필요 수행하십시오에서응용 프로그램-context.xml에 다음과 같은 스키마를 추가
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <bean id="shutDownBean" class="spring.ShutDownBean" /> <context:annotation-config/> </beans>
는 @PreDestroy 및 태그를 사용할 수있는 @PostDestroy한다. 이제 종료 콜백이 호출 될 때 일부 코드를 실행하려는 ShutDownBean이 있다고 가정 해 보겠습니다. 은 빈을 등록합니다.
import javax.annotation.PreDestroy; public final class ShutDownBean { @PreDestroy public static void shutDownMethod() { System.out.println("Shutting down!"); } }
이제 끝났습니다.
당신은 당신이 이런 식으로 닫습니다 필요가 @PreDestroy 어노테이션 사용 후 데스크톱 응용 프로그램이있는 경우 :AbstractApplicationContext applicationContext = new ClassPathXmlApplicationContext("application-context.xml"); applicationContext.registerShutdownHook();
참고 : AbstractApplicationContext이 registerShutdownHook (의 구현이) 그래서이 당신이 사용할 수있는 최소 클래스입니다.
또한 클래스의 파괴 방법 태그를 사용할 수있는 경우 구현을 제어하지 않습니다. 예를 들어, 당신은 당신의 applcation-context.xml에이를 추가 할 수 있습니다
<bean id = "dataSource" class = "org.apache.commons.dbcp.BasicDataSrouce" destroy-method = "close">
는 파괴-방법 값은 가시성을 가지고 있지만 인수가없는 필요가 있습니다.
희망이 도움이됩니다.
- 1. 거기에 'Address of'또는 .net의 오프셋 연산자와 같은 것이 있습니까?
- 2. 거기에 xsl : fo보고 또는 xsl : fo 시뮬레이션 같은 것이 있습니까?
- 3. 성 ActiveRecord 같은 RowState 속성?
- 4. XML 2.0과 같은 것이 있습니까?
- 5. 거기에 그림 같은 C 문서가 있습니까?
- 6. 인가 거기에 파일 스트림과 같은 블록
- 7. 거기에 htaccess 같은 뭔가가있다 asp.net/IIS 서버
- 8. 거기에 아이폰에 쿠키와 같은 모든 방법입니다
- 9. NSBottomBar와 같은 것이 있습니까?
- 10. Server.FileNameEncode와 같은 것이 있습니까?
- 11. CURLOPT_CONNECTIONTIMEOUT과 같은 것이 있습니까?
- 12. 거기에 파이썬이나 래퍼에 drand48()에 상응하는 것이 있습니까?
- 13. 지연 성 소켓 - 확장 성?
- 14. C++ 소스 생성기에서 파일 만들기 - 거기에 어떤 것이 있습니까?
- 15. jQuery.toggle (boolean)과 같은 것이 있습니까?
- 16. 거기에 파이썬에서 COMMIT 아날로그 파일로 쓰는 것이 있습니까?
- 17. MATLAB에서 'whereis'와 같은 것이 있습니까?
- 18. jQuery에는 isClicked와 같은 것이 있습니까?
- 19. Sprocket과 같은 것이 Java 용입니까
- 20. ActionMailer에 필터와 같은 것이 있습니까?
- 21. PHP에서 Chronic과 같은 것이 있습니까?
- 22. 기능 모델과 같은 것이 있습니까?
- 23. Jsp 다이어그램과 같은 것이 있습니까?
- 24. 웹용 TextMate 같은 것이 있습니까?
- 25. System.Diagnostics.Process.Start와 같은 것이 스트림을 실행합니다.
- 26. Readability.js와 같은 Python을위한 것이 있습니까?
- 27. 같은 페이지에 게시하는 것이 좋습니다.
- 28. Linux의 Shark와 같은 것이 있습니까?
- 29. 거기에 Megaupload API가 있습니까?
- 30. 윈저 성
무엇이 @predestroy입니까? –
http://www.mkyong.com/spring/spring-postconstruct-and-predestroy-example/ – KNU