Surtout lors de la conception de classes utilitaires, il y a des occasions où vous voulez que le champ statique soit la cible de @ Autowired
. Dans ce cas, il semble que vous deviez définir le setter du champ statique cible comme une méthode non statique et ajouter @ Autowired
à ce setter. Ce qui suit est un exemple.
public class SampleClass {
private static StaticField staticField;
@Autowired
public void setStaticField(StaticField staticField) {
SampleClass.staticField = staticField;
}
}
Cependant, comme il s'agit d'un mauvais savoir-faire, si vous devez répéter fréquemment ce qui précède, il semble que vous deviez revoir la conception, comme créer un singleton de classe. La réalité du développement du système est que la conception ne peut pas être revue aussi facilement (´ ・ ω ・ `).
Recommended Posts