婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > thymeleaf實現th:each雙重多重嵌套功能

thymeleaf實現th:each雙重多重嵌套功能

熱門標簽:怎么去掉地圖標注文字 合肥阿里辦理400電話號 海南人工外呼系統哪家好 地圖標注資源分享注冊 慶陽外呼系統定制開發 廊坊地圖標注申請入口 襄陽外呼增值業務線路解決方案 北京外呼系統咨詢電話 高德地圖標注公司位置需要錢嗎

博主最近在做一個個人的博客網站,準備用 thymeleaf 實現一個動態加載一二級文章分類的功能,效果如下:

后臺實體類代碼如下:

/**
 * @author 曲健磊
 * @date 2019-08-22 20:28:18
 * @description 一級分類實體類
 */
public class CateVO {
  /**
   * 一級分類id
   */
  private Integer cate1Id;
  /**
   * 一級分類名稱
   */
  private String cate1Name;
  /**
   * 該一級分類下的二級分類列表
   */
  private ListCate2> cate2List;
 // 省略set get方法
}
/**
 * @author 曲健磊
 * @date 2019-08-15 20:18:44
 * @description 二級分類實體類
 */
public class Cate2 {
 /**
   * 二級分類id
   */
  private Integer id;
 /**
   * 二級分類名稱
   */
  private String cateName;
}

Controller 層的代碼如下:

@Controller
@RequestMapping("/")
public class IndexController {
  @Autowired
  private CateService cateService;
 /**
 * 我配置的項目端口號是:80
 * 所以,當用戶在瀏覽器上輸入:127.0.0.1:80 或 127.0.0.1 時請求會進到這個方法里
 */
  @GetMapping("/")
  public String defaultWebPage(HttpServletRequest request){
    // 1.模擬獲取所有的一級分類以及每個一級分類下的所有二級分類
 ListCateVO> allCateList = new ArrayListCateVO>();
 // 1.1.一級分類
 CateVO cateVO1 = new CateVO();
 cateVO1.setCate1Id(1);
 cateVO1.setCate1Name("大數據");
 
 // 1.2.該一級分類下的二級分類列表
 ListCate2> cate2_1List = new ArrayListCate2>();
 
 // 1.2.1.第一個二級分類
 Cate2 cate2_1_1 = new Cate2();
 cate2_1_1.setId(1);
 cate2_1_1.setCateName("Hadoop");
 
 // 1.2.2.第二個二級分類
 Cate2 cate2_1_2 = new Cate2();
 cate2_1_2.setId(1);
 cate2_1_2.setCateName("Spark");
 
 cate2_1List.add(cate2_1_1);
 cate2_1List.add(cate2_1_2);
 // 1.3.把所有的二級分類添加到該一級分類下
 cateVO1.setCate2List(cate2_1List);
 // 1.4.把所有的一級分類放入列表中,多個的話以此類推(通常都是直接查數據庫的)
 allCateList.add(cateVO1);
 // 2.將一級分類列表放入 request 域中。
    request.setAttribute("cateList", allCateList);
    // 3.返回 index.html 頁面
    return "index";
  }
}

前臺 html 的代碼如下(簡化):

!DOCTYPE HTML>
!-- thymeleaf的引用 -->
html xmlns:th="http://www.thymeleaf.org">
head>
!-- 引用的css,js -->
/head>
!-- 頁面主體 -->
body>
ul>
 !-- 這一級是一級的分類 -->
  li th:each="cate1:${cateList}">a th:text="${cate1.cate1Name}">/a>
   !-- 這是一級下的二級分類列表 -->
    ul>
     li th:each="cate2:${cate1.cate2List}">a th:text="${cate2.cateName}">/a>/li>
    /ul>
  /li>
/ul>
/body>
/html>

博主直接用 java 代碼解釋一下上面的 th:each 那里是什么意思吧:

// cateList 就是我們在 Controller 中向 request 域中設置的那個屬性
for (CateVO cate1 : cateList) {
 System.out.println(cate1.cate1Name);
 
 // cate1這個變量現在就存在于request域中,我們可以直接調用它的屬性和方法
 for (Cate2 cate2 : cate1.cate2List) {
 System.out.println(cate2.cateName);
 
 // 依次類推,如果有三級分類這里繼續調用cate2的屬性或方法就可以
 }
}

cate1:${cateList} 這個寫法是固定的格式,冒號前的 cate1 是新定義的臨時變量,cateList 是我們在 Controller 中放入 request 域中的變量;在一級分類循環里面,我們是可以直接獲取剛才定義的臨時變量:cate1 的。

所以,我們可以繼續 th:each 遍歷該一級分類的二級分類列表,三級四級以此類推。

總結

以上所述是小編給大家介紹的thymeleaf實現th:each雙重多重嵌套功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • springboot+thymeleaf+druid+mybatis 多模塊實現用戶登錄功能
  • Spring boot+mybatis+thymeleaf 實現登錄注冊增刪改查功能的示例代碼
  • Spring boot2+jpa+thymeleaf實現增刪改查
  • Thymeleaf對象的使用之基本對象實例解析
  • SpringBoot使用thymeleaf模板過程解析
  • Spring Boot Thymeleaf實現國際化的方法詳解
  • SpringBoot引入Thymeleaf的實現方法
  • Thymeleaf中th:each及th:if使用方法解析

標簽:鶴崗 株洲 商丘 平頂山 臺州 鎮江 哈密 綿陽

巨人網絡通訊聲明:本文標題《thymeleaf實現th:each雙重多重嵌套功能》,本文關鍵詞  thymeleaf,實現,each,雙重,多重,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《thymeleaf實現th:each雙重多重嵌套功能》相關的同類信息!
  • 本頁收集關于thymeleaf實現th:each雙重多重嵌套功能的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 石嘴山市| 岗巴县| 苗栗市| 榆中县| 昭通市| 泸州市| 海口市| 江门市| 滁州市| 龙游县| 宜章县| 周口市| 达孜县| 伊川县| 青田县| 赤峰市| 承德市| 西和县| 盐源县| 昌江| 南乐县| 井冈山市| 工布江达县| 潞西市| 莲花县| 安溪县| 策勒县| 兰溪市| 瑞昌市| 商都县| 武强县| 玛沁县| 双桥区| 衡山县| 华池县| 鹤山市| 南城县| 文安县| 额尔古纳市| 衡东县| 阿克苏市|