© Enkel/Shutterstock.com
Wichtige JVM Microframeworks im Überblick

Alle neune!


Nachfolgend stellen Christian Schwörer und Carlos Barragan wichtige JVM-Microframeworks vor. Angesichts der Vielzahl der vorhandenen Microframeworks erhebt diese Liste keinen Anspruch auf Vollständigkeit, präsentiert aber wichtige Fakten zu einigen der prominentesten Microframeworks.

http4k

Slogan

http4k is a lightweight but fully-featured HTTP toolkit written in pure Kotlin that enables the serving and consuming of HTTP services in a functional and consistent way. http4k applications are just Kotlin functions which can be mounted into a running backend.

First-class Language

Kotlin

Eigenschaften

http4k bezeichnet sich selbst als „Server as a Function HTTP toolkit“. Hieraus wird schon ersichtlich, dass es zum Ziel hat, die Erstellung von kleinen, schnellen Applikationen zu ermöglichen.

Wie viele andere Frameworks nutzt es zur Anwendungskonfiguration eine Kotlin DSL. Darüber werden in erster Linie HttpHandler und Filter definiert. HttpHandler werden genutzt, um Requests auszulesen und in entsprechende Responses zu mappen. Mittels Filter können Pre- und Post-Processing-Aktionen hinzugefügt werden, beispielweise für Authentifizierung, Logging und Caching.

http4k unterstützt verschiedene Server wie Jetty (mit WebSocket-Support), Undertow, Netty und Ktor CIO. Es bringt zahlreiche Erweiterungsmodule mit, zum Beispiel für Micrometer-Metriken, Resilience4J und vorkonfigurierte OAuth-Provider. Auch verschiedene Templating Engines – unter anderem Dust, Freemarker und Thymeleaf – können konfiguriert werden.

Hello-World-Beispiel

fun main() { routes( "/hello" bind GET to { Response(OK).body("Hello World!") } ).asServer(Jetty(8080)).start() }

Starter-Klasse Application.kt

Einschätzung

Das Framework zeichnet sich durch seine konsequente Nutzung von Kotlin Functions aus. Dadurch wird ein sehr prägnanter, kurzer Codestil möglich. So wurde in einem http4k-Referenzbeispiel ein Dropbox-Clone mit nur 70 Zeilen Kotlin-Code realisiert.

Durch die starke Ausrichtung auf dieses Sprachfeature sind entsprechende Kotlin-Vorkenntnisse beim Einstieg hilfreich.

Weiterführende Links

Quarkus

Slogan

SUPERSONIC SUBATOMIC JAVA

A Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards.

Main Contributor/Sponsor

Red Hat, Inc.

First-class Languages

Java, Kotlin, Scala

Eigenschaften

Quarkus nutzt Ahead of Time (AoT) Compilation zur Realisierung der Framework-Logik. ...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang