Ich bin relativ neu in Bezug auf Java-Webentwicklungsfähigkeiten. Ich habe ein Projekt, von dem ich denke, dass es ein guter Kandidat für einen RESTful-Service wäre, wenn ich nur wenig über APIs verstehe. Ich versuche, mich mit den Details zu befassen, wie dies strukturiert sein soll, komme aber in Bezug auf die Google-Suche und das Lesen des Materials, das ich bereits habe, nicht wirklich weiter. Ich hoffe, dass dieser Beitrag eine gewisse Validierung und / oder Umleitung in Bezug auf mein Wissen und meine Annahmen zu diesem Thema liefert.
Ich gehe derzeit davon aus, dass mein RESTful-Service die folgende Struktur aufweist:
- Datenbankdaten (SQL).
- Ein ORM (ich verwende ein relativ unbeliebtes ORM namens CPO, das jedoch bei den meisten Menschen nur durch den Ruhezustand ersetzt wird).
- Eine Java-Manager-Klasse mit Methoden, die mit dem ORM kommunizieren, um die Daten abzurufen
- Eine oder mehrere Java-Controller-Klassen, die die Anforderungszuordnung verarbeiten und
@ResponseBody
die URL und Aktionen für den Umgang mit Daten über HTTP-Verben steuern / verarbeiten ( http://mysite.com/computers/dell), werden möglicherweiseGET
mit dem Wort "dell" angefordert. in der URL als Parameter, der ein JSON-Array mit Informationen zu Dell-Computern zurückgibt). - Dieser Dienst sollte mit Spring Boot ausgeführt werden oder in der Lage sein, eigenständig und unabhängig von anderen Anwendungen zu sein.
Unter der Annahme, dass das oben Gesagte korrekt ist, hätte ich (auf einer sehr einfachen Ebene) einen RESTful-Service, mit dem jede Anwendung Daten konsumieren und verwenden kann.
Sagen wir also, ich habe dann meine Webanwendung. Angenommen, ich erstelle eine Web-App mit Informationen zur Computerhardware und verwende Spring, um diese Web-App zu erstellen. Hier sind meine Annahmen:
- Ich hätte eine Reihe von Ansichten als JSPs, wobei die JSPs HTML-, CSS- und JavaScript-Includes enthalten. Das JavaScript verarbeitet AJAX-Aufrufe an den Controller dieser Anwendung nach Bedarf (siehe unten).
- Diese Web-App verfügt auch über einen eigenen Controller, der die URL-Anforderungen und das Routing der App verarbeitet, und der Controller verwendet dann beispielsweise das
ModelAndView
Objekt oder etwas in dieser Richtung, um mit dem Controller des RESTful-Dienstes zu "sprechen" und die übertragenen Daten abzurufen Übergeben Sie diese Daten zur Anzeige an die Ansicht (Javascript, JSP usw.) zurück.
Bin ich hier auf dem richtigen Weg? Ich verstehe, dass RESTful-Services auch einen Authentifizierungsaspekt haben, aber konzeptionell bin ich noch nicht da (und mein Projekt wird in einem privaten Netzwerk verwendet, sodass Sicherheit derzeit keine Priorität hat).
Jeder Einblick, jede Kritik, jedes Wissen, jedes Feedback oder jede Klarstellung wird sehr geschätzt.