簡體   English   中英

使用Springboot的Thymeleaf或Angular4

[英]Thymeleaf or Angular4 with Springboot

我主要只使用JSP處理Springboot框架,以解決網站部分所需的內容。 現在,我有一個項目可以圍繞網站展開(如果不是全部的話),我有幾個問題。 首先要清楚一點,我沒有使用Thymeleaf或Angular的經驗,因此無論我選擇哪種方式都是第一次(我認為thymeleaf語法對我來說更容易處理)。

好的,所以我的主要目標不是每次從后端加載數據時都渲染整個頁面,所以我認為我想要一個頁眉/內容/頁腳部分,每次單擊某些內容時,內容部分都將改變。 另外,我希望裝入程序在內容部分發生更改時顯示並消失。 對於注冊的用戶,此Web應用程序將需要安全。

我在網上搜索了這兩個框架,但似乎找不到正確的答案,因此我可以繼續自己的開發

如果我決定與Thymeleaf一起使用,如果其他某個平台需要連接到該服務,那么我不介意在以后的開發中創建單獨的REST服務。你們認為我應該朝哪個方向發展,Thymeleaf還是Angular? 任何幫助和/或討論將不勝感激。

很抱歉,這似乎是一個普遍的問題,但是我只需要一些基本的指導即可。 干杯!

我認為過渡到ThymeLeaf對您來說可能是最容易的,但是Angular也是一個不錯的選擇,從那里開始就取決於您。 您是否寧願使用大多數與JSTL表達式類似的表達式,但在Spring的SpEL語言中,然后使用ThymeLeaf,或者寧願使用JavaScript,然后使用Angular。 這只是用戶對您正在執行的操作的偏愛。

片段化部分(頁眉,頁腳,正文等)是兩個框架固有的。 它僅取決於您要使用哪一個。 無論您如何處理,要在不渲染其他部分的情況下加載特定部分,都將需要AJAX,並使您對模板框架的工作方式感到滿意。

我建議閱讀它們兩者,以找出您更喜歡哪一個。

角度的

胸腺

他們倆都為初學者提供了出色的文檔資料, BaeldungMkyong為ThymeLeaf提供了不錯的選擇。 我發現Angular的文檔本身就足夠好。

對於加載程序,可以使用簡單的CSS和JS。 關於如何進行全屏加載程序以及如何使用JS或CSS打開或關閉它們的演示有大量。 IHateTomatoes上有一篇很好的文章,介紹如何構建全屏加載程序,它具有No JS fallback選項,應該為您提供一個良好的起點。

關於安全性的觀點是另外一個怪物。 我將研究Spring Security。 它相對簡單,尤其是在使用Spring Boot時。 如果希望它可以控制用戶會話並幫助防止會話阻塞,請添加CSRF以防止跨站點偽造,控制對URL的權限以及是否在線。 這一切都取決於。

無論哪種方式,都不要隨意破壞安全性,它最終會帶來您認為安全的東西,但實際上並不是安全的,這會使您和您的用戶處於非常不利的境地。 再次, Baeldung在用戶注冊和登錄過程方面具有出色的經驗,可以幫助您開始使用Spring安全性以及如何將所有內容結合在一起。

相當高的答案,但希望能給您一些很好的起點和資源。

構建將前端與后端解耦的應用程序。

始終遵循“ API優先”方法構建應用程序API優先方法涉及設置應用程序的基礎,這是應用程序編程接口

對我而言,Thymeleaf和Angular之間的區別是:

使用Thymeleaf:您不需要在前端側創建Restful / Web服務終結點,因為您只需要從前端本身對后端進行調用即可。

使用Angular:除了后端的Restful / Web服務端點之外,您還必須在前端側構建Restful / Web服務端點,因為您不想公開從Javascript代碼到后端的直接訪問。

希望這對您有所幫助,並祝您編程愉快!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM