Junior — Middle
Come viene implementato il pattern 'Metodo Template' nel framework Spring?
sobes.tech AI
Risposta dell'AI
In Spring, il pattern "Metodo Template" viene implementato tramite classi astratte e hook, dove la classe base definisce l'algoritmo generale e le sottoclassi sovrascrivono singoli passaggi. Ad esempio, nel framework Spring esiste la classe JdbcTemplate, che definisce il modello di lavoro con JDBC: apertura della connessione, esecuzione della query, elaborazione del risultato e chiusura delle risorse. L'utente sovrascrive solo la parte relativa all'elaborazione del risultato (ad esempio, tramite RowMapper).
Esempio di un metodo template semplificato:
public abstract class AbstractProcessor {
public void process() {
stepOne();
stepTwo();
stepThree();
}
protected abstract void stepOne();
protected void stepTwo() {
// passaggio comune, può essere sovrascritto
System.out.println("Passo due di default");
}
protected abstract void stepThree();
}
public class ConcreteProcessor extends AbstractProcessor {
@Override
protected void stepOne() {
System.out.println("Passo uno personalizzato");
}
@Override
protected void stepThree() {
System.out.println("Passo tre personalizzato");
}
}
In questo modo, Spring utilizza questo pattern per incapsulare operazioni ripetitive e fornire punti di estensione.