2012-03-06 16 views
5

Kullanıcı oturumu bittiğinde bazı geçici dosyaları silmek istiyorum. Dosyalarla ilişkili bilgiler @SessionAttributes ile açıklanmış bir nesnede saklanır.Son oturum etkinliğini dinlemek için bir "3 MVC yolu" var mı?

Bunun için uğraştığım tek yol bir HttpSessionListener oluşturmaktır.

Açıklamalı eklenmiş nesneyi kolayca alabileceğim oturum sonu olayını dinlemenin daha üst düzey, basitleştirilmiş, Springy yolu var mı?

+0

Kullanıcı oturumu kapatırsa, bu etkinlikte hareket edebilirsiniz. Kullanıcı sadece gezinirse, 'HttpSessionListener' tek seçenektir. – DwB

cevap

1

doğrudan ilişkili ancak bakmak için ilginç bir proje olabilir Değil en. seans (genellikle 30 dk) süresi dolduğunda

https://github.com/shawnmclean/Idle.js

Oturum silinmesi genellikle sunucu tarafında olur. Yukarıdaki proje, ön uçtaki kullanıcı davranışlarını tespit etmeyi sağlar.

6

iki seçenek bahar fasulye HttpSessionListener kullanmak:

ilk servlet bağlamı elde etmek WebApplicationContextUtils.getRequiredApplicationContext(servletContext) kullanmaktır. Eğer @Autowired/@Inject kullanımını getAutowireCapablyBeanFactory().autowireBean(this) kullanmak istiyorsanız

  • kullanım getBean(..)
  • : Burada, iki alt seçenekleri vardır. Dinleyici singleton olduğundan, bunu yalnızca bir kez yapmanız gerekir (alanların null olup olmadığını kontrol edin).

İkinci seçenek, dinleyiciye AspectJ and @Configurable kullanmaktır.

+0

Bu konuyu bir süredir araştırıyorum. Bunun tam bir örneğini nerede bulabileceğimi biliyor musunuz? Şimdiden teşekkürler – stackoverflow

+0

Bilmiyorum, ama yukarıdaki parçacıkların yeterli olması gerektiğini düşünüyorum :) – Bozho

İlgili konular