Printemps de base. Par défaut @Bean méthode destroy
J'ai ma propre bean:
@Bean
public MyBean myBean(){...
printemps suivant la documentation à la libération de ses propres ressources, je dois préciser destroyMethod
. Je n'en ai pas trouvé de défaut de détruire les méthodes appelées par le printemps dans le cas où si destroyMethod
n'est pas spécifié directement.
J'ai utilisé
@Bean(destroyMethod = "close")
public MyBean myBean(){...
mais pensez à la possibilité de ne pas spécifier la méthode destroy directement si elle a une valeur par défaut.
N'printemps essayer quelque chose par défaut comme destroy
, close
, release
?
Si le ressort essaie de certaines méthodes par défaut de libérer des ressources - qui?
Je crois que non. Il serait très incertaine, vous avez besoin d'une annotation comme
@PreDestroy
ou @Bean(destroyMethod = "...")
, ou de mettre en œuvre DisposableBean
.OriginalL'auteur Sergii | 2017-06-26
Vous devez vous connecter pour publier un commentaire.
Comme documenté dans
Bean.destroyMethod
:En d'autres termes, si vous ne spécifiez pas
destroyMethod
, mais le haricot a un publicclose()
oushutdown()
méthode, il sera automatiquement utilisé comme le détruire-méthode.Pour désactiver cette inférence, l'utilisation
@Bean(destroyMethod = "")
.OriginalL'auteur Mark Rotteveel
De l'org.springframework.les haricots.usine.DisposableBean interface spécifie une méthode unique −
Simplement le mettre en œuvre −
de configuration XML
et à la fève
ou de les annoter avec @PreDestroy
OriginalL'auteur Ofer Skulsky
Vous pouvez mettre en œuvre une méthode qui sera exécutée avant de les détruire et de les annoter avec
@PreDestroy
OriginalL'auteur Krishna Kuntala
Vous pouvez étendre
DisposableBeanAdapter
classe. L'une des méthodes qu'il propose est ladestroy
méthode appelée par le Printemps. De cette façon, vous n'avez pas à fournir toute mise en œuvre, tout cela est requis lorsque vous utilisezDisposableBean
interface.OriginalL'auteur Dmitry Senkovich