2009-04-28 6 views
1

J'ai une classe abstraite, Foo, qui a une méthode non-abstraite appelée Barre. J'ai une classe Baz qui étend Foo et a son propre constructeur unique. Par défaut, lorsque Spring instancie la classe Baz au démarrage, il appelle le constructeur Baz avant de transmettre les valeurs dans la méthode de la classe parente, Bar.Printemps Appelle le constructeur d'objet avant de définir les propriétés

Existe-t-il un moyen de remplacer ce comportement pour que Bar soit appelé avant le constructeur de Baz? Ou, si j'ai besoin d'étendre le comportement par défaut de Spring en quelque sorte, quelle serait la meilleure façon de faire cela?

Répondre

2

Il me semble que ce que vous décrivez est la façon dont Java est conçu pour fonctionner. Les objets doivent être entièrement construits (via les constructeurs) avant de pouvoir appeler des méthodes sur cette instance.

Mon code de printemps utilise rarement les constructeurs pour beaucoup, car ils ne sont pas très bons. J'ai commencé à utiliser quelques méthodes avec l'annotation @PostConstruct, qui peut mieux convenir à vos besoins.

Questions connexes