/ / Frühling und Jersy State volle und Staatenlose Ansatz in der gleichen Anwendung - Rest, Feder-Mvc, Feder-Sicherheit, Trikot

Spring und Jersy State voll und stateless Ansatz in der gleichen Anwendung - Rest, Feder-PVC, Feder-Sicherheit, Trikot

In meiner Frühlingsanwendung verwende ich beideController und Service Layer. Ich umadressieren Meine JSP von Controller.In Service-Layer ich schriftliche Dienste mit JaxRS. Ich habe meine Webservices gesichert. Verwenden der Spring-Sicherheit mithilfe des tokenbasierten Ansatzes. Ich versuche zu implementieren

1.Same APIs in mobilen Geräten (zustandslos)

2.Web-Anwendung Gleiche API und Controller, die ich bereits in der Anwendung definiert habe

3.Web: Erinnere dich an mich. Token basiert. Was ist Standardpraxis?

Kann ich es in einer einzigen Anwendung für das Web mit REST-Diensten erreichen? Oder ich muss Controller und JSP von Anwendung .i.e trennen. Zwei separate Anwendung

1.Spring MVC Web Anwendung: Controller und JSP. Verbraucht REST-Dienste.

2.Jersy Anwendung: nur Dienste. Kein Controller, keine JSP

3.Android Mobile App: verbraucht REST-Dienste.

Antworten:

0 für die Antwort № 1

Es ist möglich, die JSON-API und die Webanwendung in derselben Anwendung zu implementieren. Um dies zu tun, müssen Sie nicht Jersey und Spring MVC verwenden. Eines der Frameworks wäre genug.

In diesem Artikel wird erläutert, wie eine JSON-API (oder besser eine REST-API) mit Spring implementiert wird: Erstellen eines RESTful-Webdienstes

Und in diesem Teil der Jersey-Dokumentation wird erklärt, wie Sie Jersey verwenden können, um HTML mit JSP oder anderen Template-Sprachen zu erstellen: Kapitel 20. MVC-Vorlagen

Die Integration beider Frameworks ist ebenfalls möglich: So integrieren Sie Jersey in eine Spring MVC-Anwendung

Es liegt also an Ihnen, welchen Ansatz Sie verwenden.

Vielleicht könnte eine andere Möglichkeit zu Ihrer passenAnforderungen: Sie können die Geschäftslogik und die Persistenz in einer separaten Bibliothek implementieren und in beiden Projekten verwenden. Diese Bibliothek könnte Spring Dependency Injection, Spring Persistence usw. verwenden. Hier ist der Teil in der Jersey-Dokumentation, der Ihnen helfen würde, diese Bibliothek in Jersey zu integrieren: Frühling DI Wenn Sie diesen Ansatz wählen, empfehle ich Ihnen, ein Maven Multi-Modul-Projekt mit den 3 Teilen (Business, Web, API) als separate Module.

Zum zweiten Teil Ihrer Frage, wie Sie eine Token-basierte "Erinnerung an mich" implementieren (genauer gesagt a Session). In einer Web-Anwendung ist es üblich, Cookies dafür zu verwenden. Wie man das in Jersey implementiert, kann gefunden werden Hier, wo die Klasse HttpSitzung wird eingesetzt. Wenn Sie möchten, dass es für Ihre JSON-API mehr REST-konform (statuslos) ist, müssen Sie die Anmeldeinformationen (möglicherweise ein Hash-Passwort) in jeder Anfrage senden. Für weitere Optionen empfehle ich diesen Artikel: RESTful Authentifizierung Und werfen Sie einen Blick auf diesen Teil der Trikot-Dokumentation: Sicherheit oder dieser Artikel Spring Security und Angular JS.