GraphQL mit Spring Boot und Spring Security

 
Tutorial Day - 05. Juni
 
09:15
13:15
 
Tutorial
 
Kraichgau (1. OG)

GraphQL ist eine Sprache zur Abfrage und Manipulation von Daten. Bei der Kommunikation einer Webapplikation mit ihrem Backend stellt sie eine Alternative oder Ergänzung zu einer REST basierten API dar.

Vorteile zeigen sich z.B. wenn die Entwicklung von Frontend und Backend, etwa wegen verschiedener Teams, besser entkoppelt werden soll. GraphQL gibt dem Frontend dabei die Möglichkeit jederzeit selbst zu entscheiden welche Teile von möglicherweise recht umfangreichen Datensätzen ausgeliefert werden sollen. Auch können für eine bessere Effizienz mehre Abfragen zusammengefasst werden. Gleichzeitigt liefert GraphQL mit einem eigenen Schema ein wertvolles Werkzeug verfügbare Daten und deren Strukturen klar zu beschreiben.

Nach einer Einführung in GraphQL erstellen wir in diesem Workshop eine Spring Boot Applikation welche Daten über eine GraphQL-API zur Verfügung stellt. Diese API wird im nächsten Schritt über Spring Security abgesichert.

Voraussetzungen: Ein Laptop mit einer Java-IDE eigener Wahl, ein JDK in der Version 10 oder höher und ein aktueller Browser. Gerne kann auch im Pair gemeinsam an einem Laptop entwickelt werden.

Christian Kumpe

diva-e, DE

Christian Kumpe studierte Informatik am KIT in Karlsruhe und sammelte bereits während seines Studiums als Freelancer Erfahrung in diversen Java-Projekten. Seit 2011 arbeitet er bei der diva-e in Karlsruhe. Sein Interesse gilt den technischen Details der JVM, Clean Code und dem Einsatz moderner (Web-)Technologien aber auch der Wartbarkeit von langjährigen Softwareprojekten.
Seit vielen Jahren ist er als regelmäßiger Sprecher auf Konferenzen rund um das Thema Java und Softwareentwicklung unterwegs.

Thorben Hischke

diva-e

Thorben Hischke arbeitet seit fast 20 Jahren in der IT-Branche und seit 2007 bei der diva-e in Karlsruhe als Senior Architect. Sein Themenschwerpunkt ist die Integration von CMS-Systemen in komplexe Umgebungen bei den Kunden und wie man damit funktionale Webpräsenzen erstellen kann. Schwerpunktmässig ist er im Backend unterwegs und setzt dabei auf Spring Boot zur Integration.