Spring Framework
Viele Java-Teams verwenden bereits Spring Boot zum Erstellen von Anwendungen. Die Spring-Integration mit webforJ ermöglicht es Ihnen jetzt, die UI-Komponenten von webforJ zu bestehenden Spring-Anwendungen hinzuzufügen oder die Funktionen von Spring in neuen webforJ-Projekten zu nutzen.
Ihre Spring-Services, -Repositorys und -Konfigurationen funktionieren wie gewohnt. Ihre webforJ-Komponenten können jedes Spring-Bean @Autowired
verwenden. Spring Data Repositorys verbinden sich direkt mit webforJ-Tabellen über SpringDataRepository
. Die Entwicklung wird schneller mit automatischem Browser-Reload von Spring DevTools und webforJ LiveReload.
Die Integration hält beide Frameworks dabei, das Beste zu tun, was sie können – Spring kümmert sich um Backend-Angelegenheiten, während webforJ die Benutzeroberfläche verwaltet.
Themen
📄️ Spring Boot
Spring Boot ist eine beliebte Wahl zum Erstellen von Java-Anwendungen und bietet Dependency Injection, automatische Konfiguration und ein eingebettetes Servermodell. Wenn Sie Spring Boot mit webforJ verwenden, können Sie Dienste, Repositories und andere von Spring verwaltete Beans direkt in Ihre UI-Komponenten durch Konstruktor-Injection einfügen.
📄️ Routing
Routing in webforJ mit Spring funktioniert genau wie in normalen webforJ-Anwendungen. Sie verwenden weiterhin die @Route-Annotation, um Routen zu definieren, dieselben Navigationsmuster und denselben Routenlebenszyklus. Der einzige Unterschied besteht darin, dass Ihre Routen, wenn Spring vorhanden ist, auch Spring-Beans über Konstruktorinjektion erhalten können.
📄️ Scopes
Spring verwaltet den Lebenszyklus von Beans über Scopes. Jedes Scope definiert, wann ein Bean erstellt wird, wie lange es lebt und wann es zerstört wird. webforJ fügt zwei benutzerdefinierte Scopes hinzu - @EnvironmentScope und @RouteScope - die definieren, wie webforJ-Anwendungen Browser-Sitzungen und Navigationen handhaben.
📄️ Spring Data JPA
Spring Data JPA ist der De-facto-Standard für den Datenzugriff in Spring-Anwendungen und bietet Repository-Abstraktionen, Abfragemethoden und Spezifikationen für komplexe Abfragen. Der webforJ SpringDataRepository-Adapter verbindet Spring Data-Repositories mit den UI-Komponenten von webforJ und ermöglicht es Ihnen, JPA-Entitäten direkt an UI-Komponenten zu binden, dynamisches Filtern mit JPA-Spezifikationen zu implementieren und die Paginierung zu verwalten.
📄️ Background Jobs
Wenn Benutzer auf eine Schaltfläche klicken, um einen Bericht zu generieren oder Daten zu verarbeiten, erwarten sie, dass die Benutzeroberfläche reaktionsschnell bleibt. Fortschrittsbalken sollten animiert werden, Schaltflächen sollten auf Hover reagieren, und die App sollte nicht einfrieren. Springs @Async-Annotation macht dies möglich, indem sie lang laufende Operationen in Hintergrundthreads verlagert.
📄️ Spring DevTools
Spring DevTools bietet automatische Neustarts der Anwendung bei Änderungen im Code. webforJ DevTools fügt die automatische Aktualisierung des Browsers hinzu - wenn Spring Ihre Anwendung neu startet, aktualisiert der Browser automatisch über den LiveReload-Server von webforJ.