2017-11-27 1 views
0

Ich habe meist mit Springboot Framework nur mit JSP gearbeitet, um die Dinge, die ich für den Website-Teil brauche, abzudecken. Nun, ich habe ein Projekt zu erledigen, das sich hauptsächlich um die Website dreht, wenn nicht alle, und ich habe ein paar Fragen. Nur um zuerst klar zu sein, habe ich keine Erfahrung entweder mit Thymeleaf oder Angular, also, was auch immer ich wähle, wird das erste Mal sein (ich denke, Thymeleaf-Syntax wäre leichter für mich zu handhaben).Thymoleaf oder Angular4 mit Springboot

Ok so das Hauptziel in meinen Gedanken ist nicht, die ganze Seite jedes Mal, wenn ich Daten aus dem Backend zu rendern, so würde ich wie eine Kopfzeile/Inhalt/Fußzeile Teile wo jedes Mal, wenn ich etwas nur klicken Inhaltsteil würde sich ändern. Außerdem möchte ich, dass ein Loader anzeigt und verschwindet, wenn sich der Inhaltsteil ändert. Diese Webanwendung muss für registrierte Benutzer sicher sein.

Ich habe gesucht im Internet beider Frameworks zu untersuchen, kann aber nicht die richtige Antwort zu finden scheine, so dass ich mit meiner Entwicklung weiter

ich nicht dagegen getrennten REST-Service in späterer Entwicklung, wenn eine andere Plattform zu schaffen Ich muss mich an den Service wenden, wenn ich mich dazu entscheide, mit Thymeleaf zu gehen. Was denkst du, in welche Richtung sollte ich gehen, Thymeleaf oder Angular? Jede Hilfe und/oder Diskussion wäre sehr willkommen.

Es tut mir leid, wenn das wie eine allgemeine Frage scheint, aber ich brauche nur einige grundlegende Richtlinien, um damit zu beginnen. Prost!

+0

Sie vergleichen Äpfel mit Orangen. Front-End-Single-Page-App-Frameworks bieten eine viel robustere Benutzererfahrung als ein Back-End wird – charlietfl

Antwort

2

Ich denke, Übergang zu ThymeLeaf wird wahrscheinlich der einfachste für Sie sein, aber Angular ist auch eine gute Wahl, und von dort ist es an Ihnen. Würden Sie eher Ausdrücke verwenden, die den JSTL-Ausdrücken ähnlich sind, aber in Spring's SPEL-Sprache, dann verwenden Sie ThymeLeaf, oder würden Sie lieber JavaScript verwenden, dann verwenden Sie Angular. Es ist nur eine Vorliebe des Benutzers für das, was Sie tun.

Der Fragmentierungsabschnitt (Kopfzeile, Fußzeile, Text usw.) ist in beiden Frameworks enthalten. Es hängt nur davon ab, welche Sie verwenden möchten. Was auch immer Sie verwenden, um bestimmte Abschnitte zu laden, ohne die anderen zu rendern, wird AJAX erfordern und Sie werden sich mit der Funktionsweise der Vorlagen-Frameworks vertraut machen.

Ich würde vorschlagen, auf beiden nachzulesen, um herauszufinden, mit wem Sie sich wohler fühlen.

Angular

Thymeleaf

haben Beide große Dokumentation für Anfänger und die Baeldung und Mkyong haben gute walkthrus für ThymeLeaf. Angulars Dokumentation fand ich allein gut genug.

Für einen Loader können Sie mit einfachen CSS und JS tun. Es gibt eine Menge Demos, wie man Vollbild-Loader macht und wie man sie mit JS oder CSS ein- und ausschaltet. IHateTomatoes hat einen guten Artikel darüber, wie man einen Vollbild-Lader baut, der eine No-JS-Fallback-Option hat und Ihnen einen guten Startpunkt geben sollte.

Ihr Punkt darüber, dass Sie sicher sein müssen, ist ein ganz anderes Monster. Ich würde Spring Security prüfen. Es ist relativ einfach, vor allem, wenn Spring Boot verwendet wird. Wenn Sie möchten, dass die Sitzung des Benutzers gesteuert und der Sitzungs-Jacking verhindert werden kann, fügen Sie CSRF hinzu, um Cross-Site-Fälschung zu verhindern, die Berechtigungen für URLs zu steuern und die Zeile weiter zu leiten oder nicht. Es kommt nur darauf an.

So oder so, stich nicht zufällig auf Sicherheit, es wird in etwas enden, das Sie fühlen, ist sicher, aber es ist nicht, was Sie und Ihre Benutzer an einem sehr schlechten Ort. Erneut hat Baeldung einen großen Spaziergang durch den Benutzerregistrierungs- und Login-Prozess, der Ihnen helfen kann, mit Spring-Sicherheit zu beginnen und alles zusammen zu binden.

Ziemlich hohe Antwort, aber hoffentlich gab es ein paar gute Startpunkte und einige Ressourcen.

+1

Danke für die schnelle und direkte Antwort. Wenn beide Fragmentierung unterstützen und beide Ajax benötigen, denke ich, dass ich in diesem Fall bei Thymeleaf bleiben werde, denn selbst wenn ich Javascript kenne, fühle ich mich wohler mit JSTL-ähnlichen Ausdrücken. Haben Sie bereits Erfahrung mit Federsicherheit, wollte nur überprüfen, ob es einfacher ist, mit eckigen oder Thymoel zu verwenden, aber ich denke thymeleaf. Danke auch für die Links, die ich brauche! – vibetribe93

1

Erstellen Sie Apps, die das Frontend vom Backend entkoppeln.

immer apps baut nach dem "Der API-First-Ansatz" Der API-First-Ansatz die Grundlage Ihrer App beinhaltet die Einrichtung, die das Application Programming Interface

Für mich die Unterschiede zwischen Thymeleaf und Eckig:

Mit Thymeleaf: Sie nicht Restful/Web-Service-Endpunkte auf Ihrer Frontend-Seite erstellen müssen, weil Sie nur Anrufe an das Backend vornehmen müssen vom Frontend selbst.

Mit Eckig: Neben Ihrer Restful/Web-Service-Endpunkte auf Ihrem Backend-Seite, Sie Restful/Web-Services-Endpunkte auf Ihrem Frontend-Seite zu bauen, weil Sie einen direkten Zugang von Javascript-Code auf die nicht aussetzen wollen Backend.

Hoffe, das hilft und Happy Coding Time!