Sobes.tech
Junior — Middle

Hoe wordt het 'Sjabloonmethode'-patroon geïmplementeerd in het Spring-framework?

sobes.tech AI

Antwoord van AI

In Spring wordt het patroon "Template-methode" geïmplementeerd via abstracte klassen en hooks, waarbij de basisklasse het algemene algoritme definieert en subclasses specifieke stappen overschrijven. Bijvoorbeeld, in Spring Framework is er de klasse JdbcTemplate, die het werkpatroon met JDBC vastlegt: verbinding openen, query uitvoeren, resultaat verwerken en resources sluiten. De gebruiker overschrijft alleen het deel dat betrekking heeft op de verwerking van het resultaat (bijvoorbeeld via RowMapper).

Voorbeeld van een vereenvoudigde template-methode:

public abstract class AbstractProcessor {
    public void process() {
        stepOne();
        stepTwo();
        stepThree();
    }

    protected abstract void stepOne();

    protected void stepTwo() {
        // gemeenschappelijke stap, kan overschreven worden
        System.out.println("Standaard stap twee");
    }

    protected abstract void stepThree();
}

public class ConcreteProcessor extends AbstractProcessor {
    @Override
    protected void stepOne() {
        System.out.println("Aangepaste stap één");
    }

    @Override
    protected void stepThree() {
        System.out.println("Aangepaste stap drie");
    }
}

Op deze manier gebruikt Spring dit patroon om herhalende operaties te encapsuleren en uitbreidingspunten te bieden.