Penso che la mia comprensione dei fagioli primaverili sia un po 'spenta.È vantaggioso creare un bean Spring quando posso accedere all'unico metodo statico direttamente con il nome della classe
Stavo lavorando al mio progetto e stavo pensando a questa situazione.
Dire che ho classe Foo
class Foo(){
public void doSomething(Object a , Object b){ // input parameters does not matter actually.
//do something
}
}
Se sto usando questa classe in un'altra classe come:
class Scheduler{
....
@Autowired
private Foo foo;
someMethod(){
foo.doSomeThind(a,b);
}
....
}
Nel caso invece di autowiring del Foo
sopra, posso fare doSomeThing
statica e utilizzare direttamente Foo.doSomeThing(a,b)
Mi stavo chiedendo se ci fosse qualche vantaggio nel creare un bean o se c'è qualche svantaggio nell'usare metodi statici come questo?
Se sono uguali, Quando dovrei andare per fagioli primaverili e quando dovrei usare semplicemente un metodo statico?
Se 'Foo' non ha nessuno stato e contiene solo metodi' static', è più di una classe di utilità. Inutile dire che questo è un bean 'Spring' dato che non è possibile scambiare le implementazioni se un' class' ha solo metodi 'static'. – CKing