Posts

Posts mit dem Label "Java" werden angezeigt.

Microservices mit Spring Boot erstellen

Bild
In der Java-Welt ist Spring eines der meist genutzten Frameworks. Spring Boot bietet einen vereinfachten, schnellen Einstieg in die Entwicklung mit Spring. Wie man loslegt, wird in diesem Tutorial gezeigt. Spring Tool Suite installieren In unserer bevorzugten IDE Eclipse 😉, kann man die Spring Tools 4 einfach über den Eclipse Marketplace installieren. Dazu im Menu folgendem Klickpfad folgen: Help => Eclipse Marketplace... In diesem Blog-Post wird beschrieben, wie man Eclipse und Maven installiert und konfiguriert (inklusive Proxy für Konzern Mitarbeiter):  eclipse-als-ide-fur-java-spring.html Dann einfach nach "Spring Tools" suchen und man findet mehrere Versionen der Spring Tools. Bitte Version 4 bzw. die neuste installieren. Beim Installieren muss man nicht viel beachten: Lizenzen akzeptieren und Next-Button klicken. Hier ist es z.B. mit ein paar Screenshots gezeigt: https://www.codejava.net/ides/eclipse/install-spring-tool-suite-for-existing-eclipse-ide   In der  Intel

Kotlin und Java Code im Spring Projekt mischen

Bild
Kotlin und Java sind beides Programmiersprachen, die auf der JVM aufsetzen. Deshalb ist es möglich Java Klassen in einem Kotlin Projekt zu schreiben und zu verwenden. Java-Dateien können aber auch automatisch in Kotlin übersetzt werden. Ich werde euch hier einen entsprechenden Mischmasch präsentieren! 😄 Warum Kotlin und Java mischen? Ein riesen Vorteil der Programmiersprache Kotlin ist aus meiner Sicht, dass wir einen großen Teil der vielen vorhandenen Java Frameworks und Bibliotheken (z.B. Spring) verwenden können. Das funktioniert, weil Kotlin genau wie Java auf der JVM (Java Virtual Machine) aufsetzt. Wenn man in Kotlin Java-Bibliotheken (jar Dateien) verwenden kann, kann man auch direkt Java Klassen verwenden und so den Code bzw. die Programmiersprachen mischen. In richtigen Projekten solltet ihr das nicht tun, weil es unnötige Komplexität erzeugt. Warum zeige ich es dann hier? Kotlin ist für mich die nächste Evolutionsstufe und ich möchte zeigen wie einfach und risikofrei ihr di

Lambda-Ausdrücke und funktionale Interfaces in Java

Bild
Funktionale Programmierung ist ein sehr beliebtes Programmierparadigma, daher ist es in vielen modernen Sprachen zu finden. Seit Version 8 bietet auch Java mit Lambda-Ausdrücken und funktionalen Interfaces Möglichkeiten zur funktionalen Programmierung an. In diesem Artikel schauen wir uns das genauer an. Was ist funktionale Programmierung? In der Objektorientierten Programmierung haben Methoden bzw. Funktionen Daten als Eingabeparameter und Rückgabewerte.  Die funktionale Programmierung ermöglicht uns neben Daten zusätzlich Funktionen zu verknüpfen und sie als Eingabeparameter und Rückgabe zu definieren. Zum Beispiel können wir einem Bubblesort Sortieralgorithmus eine Funktion übergeben, mit der der Sortieralgorithmus über die Reihenfolge der zu sortierenden Daten entscheidet. Der selbe Sortieralgorithmus kann so z.B. abhängig vom übergebenen Funktions-Parameter eine Liste von Autos nach Kaufpreis absteigend oder nach Erstzulassungs-Datum aufsteigend sortieren. Weitere Infos zur funkti

Parallele Datenverarbeitung mit Threads / CompletableFuture in der Praxis

Bild
Lang laufende Rechenoperationen oder Datentransformationen können durch parallele Ausführung erheblich beschleunigt werden. In diesem Artikel zeige ich, wie ich den Code für eine Datenbank Schemata Migration mit Hilfe von CompletableFuture und Paging von circa 15 Stunden Laufzeit auf 45 Minuten beschleunigt habe. 15 Stunden Laufzeit - warum nicht? Wenn es keinen stört, sind 15 Stunden Laufzeit für eine Datentransformation kein Problem. Unsere Datenbank Schemata Migration wurde aber bei einen produktiven System benötigt, das von Telekom Kunden genutzt wird. Leider mussten wir das produktive System während der Migration anhalten, so dass wir vor Kunde eine Downtime hatten - in diesem Fall wären 15 Stunden verständlicherweise inakzeptabel gewesen. Ich gebe zu, dass wir im Vorfeld schon Design-Fehler gemacht. Diese Fehler haben uns in die Situation gebracht, dass eine Datenbank Schemata Migration überhaupt notwendig war - das künftig zu verhindern soll hier aber nicht mein Thema sein.  Den

Java Anwendungen im Docker Container

Bild
Jede Java Anwendungen bauen, ausliefern und überall ausführen - klingt super und geht mit Docker! Ich zeige euch, wie ihr möglichst einfach und schnell in die Docker Welt einsteigt. Wir bauen ein Docker Image mit einer Java Anwendung, starten den eigenen Container lokal und testen die Anwendung im Container. Installationen und Vorbereitung Um die Voraussetzungen für den Einstieg in die Docker Welt zu schaffen, müssen wir folgendes tun: Docker für Windows installieren, siehe:  https://docs.docker.com/docker-for-windows/install/ Wenn ihr Linux oder MacOS nutzt, findet ihr auf der Docker Webseite auch passende Anleitungen. Eine Java-Anwendung schreiben, die dann in den Container kommt 😄 Falls ihr gerade keine zur Hand habt, könnt ihr diese verwenden: https://github.com/elmar-brauch/thymeleaf   Im Prinzip funktioniert es mit jeder beliebigen Java-Anwendung. Hier in der Demo nutze ich Vorteile von Spring Boot, um eine möglichst einfache Demonstration machen zu können. Docker Image bauen N