Depency Injection
Es soll eine Entkopplung von nutzenden Komponenten und konfigurierten Diensten erreicht werden, bei der die Komponenten weder wissen müssen, wie die Dienste heißen, noch wie sie zu beschaffen sind.
siehe: GitHub - ReadMe, DI, PK
Beispiel
Das PrintService-Beispiel zeigt die 3 von Martin Fowler identifizierten Arten der Dependency Injection.
Unten sehen sie ein Sequenzdiagramm der Setter-Injection. Annotierte Attribute, wie sie heute häufig anzutreffen sind, fallen ebenfalls in diese Kategorie, getreu dem Uniform Access Principle.
Um das Zusammenspiel im Detail beobachten zu können, setzen Sie den log-level auf DEBUG in der logback.xml und führen den zugehörigen TestCase aus.