119 votes

Printemps @PostConstruct vs d'initialisation de l'attribut de la méthode

quelle est la différence entre l'utilisation d' @PostConstruct d'annotation et de déclarer la même méthode que init-method au printemps de configuration xml?

Merci

178voto

Aravind A Points 4060

Pas pratiquement, je ne pense pas qu'il n'y a aucune différence, mais il y a des priorités dans la façon dont ils travaillent . PostConstruct,init-method sont BeanPostProcessors

  1. PostConstruct est un JSR 250 annotaion alors que l'initialisation de la méthode est le Printemps de la façon d'obtenir une initialisation de la méthode .
  2. Si vous avez postconstruct , ce sera appelée d'abord avant de l'init méthodes sont appelées
  3. Si votre bean implémente initialisation du bean et remplace afterPropertiesSet , premier post construite est appelée, l'afterPropertiesSet et puis init-method.

21voto

Donal Fellows Points 56559

Il n'y a pas de différence réelle. C'est à la façon dont vous préférez configurer votre système, et c'est une question de choix personnel. Moi-même, je préfère utiliser @PostConstruct des annotations pour mon propre code (comme le haricot est correctement configuré après l'appel de la méthode) et j'utilise init-method lors de l'instanciation de haricots de non-Printemps-courant des bibliothèques (ne peut pas appliquer les annotations là, bien sûr!) mais je peux tout à fait comprendre les gens qui veulent à tout faire d'une façon ou de l'autre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X