th:if標籤:
先介紹:Thymeleaf
1、Thymeleaf 是 Web 和獨立環境的現代服務器端 Java 模板引擎,能夠處理HTML,XML,JavaScript,CSS 甚至純文本。
2、Thymeleaf 的主要目標是提供一種優雅和高度可維護的創建模板的方式。爲了實現這一點,它建立在自然模板的概念上,將其邏輯注入到模板文件中,不會影響模板被用作設計原型。這改善了設計的溝通,彌補了設計和開發團隊之間的差距。
3、Thymeleaf 也從一開始就設計了Web標準 - 特別是 HTML5 - 允許您創建完全驗證的模板,Spring Boot 官方推薦使用 thymeleaf 而不是 JSP。
4、Thymeleaf 官網:https://www.thymeleaf.org/
5、Thymeleaf 在 Github 的主頁:https://github.com/thymeleaf/thymeleaf
6、Spring Boot 中使用 Thymeleaf 模板引擎時非常簡單,因爲 Spring Boot 已經提供了默認的配置,比如解析的文件前綴,文件後綴,文件編碼,緩存等等,程序員需要的只是寫 html 中的內容即可,可以參考《Spring Boot 引入 Thymeleaf 及入門》
總而言之,要使頁面動態,方法之一就是使用Thymeleaf,多用於SpringBoot
th:if
th:if屬於Thymeleaf,它的語意就像是if語句,判斷{}裏的條件是否成立
比值符號如下:
-
gt:great than(大於)>
-
ge:great equal(大於等於)>=
-
eq:equal(等於)==
-
lt:less than(小於)<
-
le:less equal(小於等於)<=
-
ne:not equal(不等於)!=
實例:<div th:if=" ${userCarSize} lt '3'">
</div>
當userCarSize小於3時,div纔會生效展示
@controller:
用這個修飾了類之後。它就會被Spring的自動掃描掃到,這個類就會被交給Spring管理。
DTO:Data Transfer object
這個概念來源於J2EE的設計模式,原來的目的是爲了EJB的分佈式應用提供粗粒度的數據實體,以減少分佈式調用的次數,從而提高分佈式調用的性能和降低網絡負載,現在泛指用於展示層與服務層之間的數據傳輸對象。
在實際項目中,DTO的分在兩層傳輸,一層是service層向controller層,這一層的DTO封裝service執行結果,給controller,簡化業務數據,只提取部分業務相關字段或補充處理相關字段,不同業務可能有不同的此類dto,具有業務相關性;
另外一層是controller層向web前端層,這一層DTO封裝controller執行結果,返回給前端web,請求返回實體封裝類,適用於所有ajax請求返回的類型實體,無業務相關性
實際上,第一層DTO通常會被封裝進第二次DTO中,在接口調用如RPC調用中,訂閱者只需要拿到簡化的業務數據對象,而不用把整個實體bean給對方。
————————————————
版權聲明:本文爲CSDN博主「逍遙不羈」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/javaloveiphone/article/details/52606688
延申:
VO(View Object):視圖對象,用於展示層,它的作用是把某個指定頁面(或組件)的所有數據封裝起來。
DO(Domain Object):領域對象,就是從現實世界中抽象出來的有形或無形的業務實體。
PO(Persistent Object):持久化對象,它跟持久層(通常是關係型數據庫)的數據結構形成一一對應的映射關係,如果持久層是關係型數據庫,那麼,數據表中的每個字段(或若干個)就對應PO的一個(或若干個)屬性。
mapper:
通用Mapper是基於Mybatis開發的一款簡化單表操作的一款插件.可以實現單表自動CURD操作.以後程序員再也不需要寫簡單的sql.同時實現了JPA思想.(不懂)
model:
系統的實體類,存放系統抽取出來的實體類