Junior — Middle
Hogyan valósul meg a 'Sablon módszer' minta a Spring keretrendszerben?
sobes.tech MI
Válasz az MI-től
A Springben az "Sablon módszer" minta absztrakt osztályok és hook-ok segítségével valósul meg, ahol az alap osztály határozza meg az általános algoritmust, és az alosztályok felülírják a különálló lépéseket. Például a Spring Framework-ben létezik a JdbcTemplate osztály, amely meghatározza a JDBC-vel való munkát: kapcsolat nyitása, lekérdezés végrehajtása, eredmény feldolgozása és az erőforrások lezárása. A felhasználó csak az eredményfeldolgozással kapcsolatos részt (pl. RowMapper segítségével) írja felül.
Egyszerűsített sablon módszer példája:
public abstract class AbstractProcessor {
public void process() {
stepOne();
stepTwo();
stepThree();
}
protected abstract void stepOne();
protected void stepTwo() {
// közös lépés, felülírható
System.out.println("Alapértelmezett második lépés");
}
protected abstract void stepThree();
}
public class ConcreteProcessor extends AbstractProcessor {
@Override
protected void stepOne() {
System.out.println("Egyedi lépés");
}
@Override
protected void stepThree() {
System.out.println("Egyedi lépés három");
}
}
Így a Spring ezt a mintát használja a ismétlődő műveletek inkapszulálására és bővítési pontok biztosítására.