To pytanie może wydawać się nieco dziwne. Załóżmy, że mam usługę, której chcę użyć w klasie Utility, która ma kilka statycznych metod. Usługa jest fasolą wiosenną, więc naturalnie wykorzystam na przykład settera i (@Aowiamizowane) do wstrzyknięcia go do mojej klasy narzędziowej. Jak wspomniano w dokumentacji Spring, wszystkie ziarna są statyczne w kontekście fasoli. Więc kiedy chcesz wstrzyknąć ziarno do klasy, nie musisz używać "statycznego" modyfikatora. Patrz poniżej:Jaki jest właściwy sposób użycia wstrzykniętego fasoli w metodzie statycznej?
public class JustAClass{
private Service service;
public void aMethod(){
service.doSomething(....);
}
@Autowired
public void setService(Service service){
this.service = service;
}
}
Teraz wracając do tego, co już wspomniałem pierwsza (Używanie usług w statycznej metody):
public class JustAClass{
private static Service service;
public static void aMethod(){
service.doSomething(....);
}
@Autowired
public void setService(Service service){
this.service = service;
}
}
choć obsługa jest statyczna, jestem zmuszony do wprowadzenia statycznego za jego definicji. Jest to dla mnie trochę sprzeczne z intuicją. czy to jest złe? czy jest to lepszy sposób? Dzięki
To jest ładne, działa na mnie! – Kaunteya
Czy jest to coś, co byłoby regularnie wykonywane? Czy istnieje inne podejście zwykle stosowane w tych sytuacjach? –