Hibernate Reactive und Kotlin: elegant und performant
Abstract
Thu 9:50 - 10:35 Uhr | 2022
Um eine bessere Performance und eine bessere Ressourcen-Nutzung zu erzielen, findet “Reactive Programming” in den letzten Jahren eine zunehmende Beachtung. Gleichzeitig hat sich Kotlin als moderne und elegante Programmiersprache für die JVM etabliert. Darüberhinaus ist angesichts der Marktdominanz von relationalen DB-Systemen das OR-Mapping nach wie vor eine Herausforderung, wobei Hibernate dafür sicherlich das bekannteste Werkzeug ist. Mit “Hibernate Reactive” gibt es Hibernate nun auch in einer Variante für Reactive Programming, wobei die bekannten Annotationen für die Entity-Klassen, wie z.B. @Id oder @OneToMany, unverändert genutzt werden können. Was bei Hibernate Reactive aber geändert und ausgetauscht werden musste, ist die Programmierschnittstelle mit der Klasse EntityManager, die nämlich an einen Thread gekoppelt war. Das neue API bietet eine Reihe neuer Java-Interfaces, wie z.B. Session oder Query, die auf Basis der Bibliothek Mutiny implementiert sind, um Reactive Programming zu ermöglichen. Gleichzeitig werden asynchrone Treiber für alle gängigen relationale DB-Systeme unterstützt, indem Hibernate Reactive mit den Clients von Eclipse Vert.x integriert ist. Wenn man nun neue Anwendungen zwar reactive, aber mit Java entwickelt, so haben diese den gleichen “Charme” wie die Anwendungen von vor 20 Jahren. Mit Hilfe von wenigen “Extension Functions” lassen sich dagegen neue Anwendungen so in Kotlin entwickeln, dass man sie als ästhetisch und elegant empfindet. Der Vortrag wird begleitet von Live-Demos, die nach einer spontanen Umfrage unter den Zuhörern wahlweise mit PostgreSQL, MySQL oder Oracle gezeigt werden.
Vortragsimpressionen
Seit 2001: Professor für Softwarearchitektur und Software Engineering, Hochschule Karlsruhe 2000 – 2001: Manager des neu gegründeten Java Center bei Sun Microsystems, München 1998 – 2000: Senior Consultant bei Capgemini, München 1996 – 1998: Consulting Manager bei Object Design für ObjectStore (objektorientiertes DBS) 1991 – 1996: Wissenschaftlicher Mitarbeiter an der TU Darmstadt 1990 – 1991: Wissenschaftlicher Mitarbeiter beim Fraunhofer Institut IOSB in Karlsruhe