İlkbahar web uygulamam kapatıldığında, bazı havuzları temizlemek için bazı temizleme kodlarını gerçekleştirebileceğime bir şekilde bağlayabileceğim bir olay varYayın temizleme kodunu koymak için ilkbaharda kapatma işlemi var mı?
cevap
Aşağıdaki
yok-yöntemi
@ amir75 olarak kullanmak CouldDisposableBean uygulamak ve yöntemi yok geçersiz açıklama
@PreDestroy önerir.
Bunlarla ilgili tüm ayrıntılar Disposable Callbacks adresinde bulunabilir.
Yay çekirdeklerinde 'yok etme yöntemi' özelliği var. bağlamınızı kapattığınızda çağrılmalıdır. sırayla size close() yöntemini çağırır, kapatmak için ise
<bean id="bean1"
destroy-method="stop"
class="com.example.Bean" />
:
yardımcı
Umut (ya da sadece eğer uygun bir kap kapatıldı).
Bunu yapmamak için Spring dışı yol, ServletContextListener
'u uygulayan bir sınıf yazmak ve temizlemenizi contextDestroyed
m'de yapmaktır. bu yöntemde. Sınıfınızı web.xml'de bir içerik dinleyicisi olarak eklersiniz.
JSR-250 şartnamesine dayanarak, modern yay uygulamasında kullanmak için en iyi uygulama @PreDestroy
ek açıklamadır, çünkü bu yaklaşım, fasulyelerinizi Spring'ten ayırır.
Bahar Boot logback örnek projeye göre, günlük sistemi temizlemek için bağlam kapatmak gerekir: https://github.com/spring-projects/spring-boot/commit/10402a651f1ee51704b58985c7ef33619df2c110
Örnek:
public static void main(String[] args) throws Exception {
SpringApplication.run(SampleLogbackApplication.class, args).close();
}
- 1. Android - Yayın alma hatası var mı?
- 2. İlkbaharda HandlerInterceptor.afterCompletion() MVC, yanıt kodunu değiştir
- 3. Uzun süredir çalışan mysql "temizleme" işlemi
- 4. Tensorflow'da no-op (geçiş) işlemi var mı?
- 5. Yuvalanmış bir kapatma işlemi döngüsü sürdürüyor mu?
- 6. capistrano 3 konuşlandırma: eski yayın sürümlerini temizleme izni hatası temizle
- 7. Dart kodunu interaktif olarak çalıştırmak için bir yer var mı?
- 8. Temizleme
- 9. İlkbaharda Grails Domain özellikleri alanına benzer bir şey var mı?
- 10. Yardıma mı ihtiyacınız var? Şablon Örnekleme Çerçevesini Temizleme
- 11. İlkbaharda
- 12. İlkbaharda paylaşılan EntityManager'da bir işlemi manuel olarak nasıl başlatabilirsiniz?
- 13. Salatalık senaryoları için temizleme adımları
- 14. Django Framework - Abone olunabilecek bir kapatma olayı var mı?
- 15. Krom uzantısında durdurma dökümünü tıklatırken uygulamadan önce temizlemenin bir yolu var mı?
- 16. Gerçek Cray PVP kodunu nereden alacağını bilen var mı?
- 17. C# 3.0 kodunu ayrıştırmanın iyi bir yolu var mı?
- 18. Drupal 7 Önbelleğini Kapatma
- 19. Magento'ya ödeme işlemi tamam mı?
- 20. Her işlem için Kernel yığını var mı?
- 21. Özel işlev girişi ve çıkış kodunu enjekte etmek için bir derleyici özelliği var mı?
- 22. Jenkins Pipeline Bir kapatma işlemi gerçekleştirin ("paralel" adımda olduğu gibi)
- 23. Java işlemi nasıl durdurulur ve bir kapatma kancası çalıştırılır
- 24. Kategori içe aktarma ifadesi koymak için tüm sınıflar bunu görecek bir yer var mı?
- 25. Yayın bildirimi nasıl iptal edilir? (Sipariş Edilmemiş Bir Yayın için)
- 26. bir virgül koymak mı (;) ı "= Onclick kullandığınızda"
- 27. Pexpect için otomatik bir bakış var mı?
- 28. WIFI değişimi için yayın eylemi
- 29. Temizleme eylemi hatasını kaygan dbio eylemleriyle temizleme
- 30. Powerpoint için ekran görüntülemeyi kapatma
bu yaklaşımla sorun Bahar muhtemelen yapıyor olmasıdır Aynı şey, ve özel sunucu içerik dinleyicinizin daha önce ya da ilkbahardan sonra çalışıp çalışmayacağı belli değil. Bu hayatı zorlaştırabilir. –