Von Dr. Stefan Koch auf Donnerstag, 16. Februar 2017
Kategorie: Application Development

BEST-P: Find-By-Example

​In Java-Enterprise-Anwendungen ist es sinnvoll, Zugriffe auf die Datenbank nach dem Design-Pattern Data Access Object in DAO-Klassen zu kapseln. Die Basis-CRUD-Operationen lassen sich in einer generischen Klasse unabhängig vom Entity-Typ definieren.  Aufwand entsteht durch die Implementierung von Find-Methoden, um Daten nach angegebenen Kriterien zu selektieren. Dieser Aufwand lässt sich durch die Verwendung des Design-Patterns Find-By-Example reduzieren.

Bei Find-By-Example werden Suchbegriffe in einem Example-Objekt angegeben. So kann nach einer beliebigen Kombination von Attributen gesucht werden. Auch wenn Hibernate oder EclipseLink Implementierungen eines Find-By-Example mitbringen verwenden wir in unseren Projekte eine Eigenimplementierung auf Basis von JPA. 

​​In unserem Find-By-Example ist die Example-Klasse ein einfaches Pojo. Es enthält die Attribute, nach denen gesucht werden soll. Wesentlich dabei ist die Übereinstimmung der Attributnamen zwischen Example- und Entity-Klasse. Folgende Möglichkeiten bietet unserer Find-By-Example-Implementierung.

​Die Implementierung haben wir hier in Form eines Maven-Projekts zum Download bereitgestellt. 

Kommentare hinterlassen