[英]How to force tomcat reload to reset static AtomicBoolean
在我的Web應用程序中,我具有一個帶有@Bean
批注方法的Spring @Configuration
類, @Bean
為我的應用程序所依賴的服務創建了一個客戶端。 客戶端是通過構建器創建的,該構建器通過內部使用private static AtomicBoolean isClientCreated
變量來強制僅存在一個客戶端實例。
當我的Web應用程序類更改之一迫使tomcat重新加載(通過web.xml
PreResources
配置)時,客戶端創建失敗,因為即使在銷毀bean之后,私有靜態AtomicBoolean isClientCreated
仍然為true
。
如何在tomcat重新加載時重置此靜態值?
您可以使用@PostConstruct
或@PreDestroy
注釋您的配置(或任何合適的單例bean)。 然后使用任何一種方法重置標志。
看例子
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.