Spring:Thymeleaf 自定义模板、springboot的总结(注解):重要


目录:

(1)自定义模板

(2)整个html文件作为模板

(3)使用其他目录中的文件模板

(4)springboot的总结:重要

(5)springboot注解的总结 重要


(1)自定义模板

 

 

 

 控制器:ThymaleafController:

package com.bjpowernode.controller;

import com.bjpowernode.model.SysUser;
import com.bjpowernode.vo.Cat;
import com.bjpowernode.vo.Dog;
import com.bjpowernode.vo.Zoo;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.*;

@Controller
@RequestMapping("/tpl")  //放在类上方的这个注解会和@GetMapping一起组成完整的访问路径
public class ThymeleafController {

    

    //自定义模板
    @GetMapping("/customtpl")
    public String customTemplate(Model model){

        return "customtpl";
    }
}

index.html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
  <h3>index.html--学习Thymeleaf语法</h3>
  <a href="tpl/expression1">标准变量表达式</a>
  <br>
  <a href="tpl/expression2">选择变量表达式</a>
  <br>
  <a href="tpl/link">连接表达式</a>
  <br>
  <a href="tpl/property">模板属性</a>
  <br>
  <a href="tpl/eachList">循环list集合</a>
  <br>
  <a href="tpl/eachArray">循环数组Array</a>
  <br>
  <a href="tpl/eachMap">循环Map集合</a>
  <br>
  <a href="tpl/ifunless">判断语句if和unless</a>
  <br>
  <a href="tpl/switch">判断语句switch</a>
  <br>
  <a href="tpl/inline">内联iniline</a>
  <br>
  <a href="tpl/text">字面量</a>
  <br>
  <a href="tpl/strjoin">字符串连接</a>
  <br>
  <a href="tpl/sym">运算符的使用</a>
  <br>
  <a href="tpl/baseObject">内置对象</a>
  <br>
  <a href="tpl/utilobject">内置工具类对象</a>
  <br>
  <a href="tpl/customtpl">自定义模板</a>
</body>
</html>

自定义模板head.html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
  <div th:fragment="top">
      <p>北京动力节点</p>
      <p>网站 www.bjpowerenode.com</p>
  </div>
</body>
</html>

使用模板:customtpl.html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
   <div style="margin-left: 400px">
       <h3>插入模板第一种格式 th:insert</h3>
       <div th:insert="~{head :: top}">
           第一种方式使用模板 th:insert
       </div>
       <br>
       <h3>插入模板第二种格式 th:</h3>
       <p th:insert="head :: top"></p>

       <br>
       <br>
       <h3>包含模板,th:include第一种语法</h3>
       <div th:include="~{head :: top}">

       </div>
       <br>
       <h3>包含模板,第二种语法</h3>
       <div th:include="head :: top">

       </div>
   </div>
</body>
</html>

插入模板,是在原有的标签中,插入模板,替换原来标签中的内容,外层的标签还在

包含模板,是使用模板替换有include的标签,外层标签不在了

 启动主启动类:

点击自定义模板:

 

(2)整个html文件作为模板

 foot.html:创建普通的html就行

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
   <div>
       foot.html
       @copy; 动力节点2020
   </div>
</body>
</html>

head.html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
  <div th:fragment="top">
      <p>北京动力节点</p>
      <p>网站 www.bjpowerenode.com</p>
  </div>

  <div th:fragment="menu">
      <p>文档|下载|blog</p>
  </div>
</body>
</html>

模板customtpl.html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
   <div style="margin-left: 400px">
       <div th:insert="head :: menu"></div>

       <h3>插入模板第一种格式 th:insert</h3>
       <div th:insert="~{head :: top}">
           第一种方式使用模板 th:insert
       </div>
       <br>
       <h3>插入模板第二种格式 th:</h3>
       <p th:insert="head :: top"></p>

       <br>
       <br>
       <h3>包含模板,th:include第一种语法</h3>
       <div th:include="~{head :: top}">

       </div>
       <br>
       <h3>包含模板,第二种语法</h3>
       <div th:include="head :: top">
       </div>

       <h3>使用整个文件作为复用的内容(整个文件作为模板使用)</h3>
       <div th:include="footer :: html"></div>
       <br>
       <div th:include="footer"></div>
       <br>
       <div th:insert="footer"></div>
   </div>
</body>
</html>

 (3)使用其他目录中的文件模板

想用conmmen目录下的left.html:

left.html:创建普通html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
  <div>
       左侧树形结构
      部门管理
      人员管理
      考勤入口
  </div>
</body>
</html>

模板customtpl.html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
   <div style="margin-left: 400px">
       <div th:insert="head :: menu"></div>

       <h3>插入模板第一种格式 th:insert</h3>
       <div th:insert="~{head :: top}">
           第一种方式使用模板 th:insert
       </div>
       <br>
       <h3>插入模板第二种格式 th:</h3>
       <p th:insert="head :: top"></p>

       <br>
       <br>
       <h3>包含模板,th:include第一种语法</h3>
       <div th:include="~{head :: top}">

       </div>
       <br>
       <h3>包含模板,第二种语法</h3>
       <div th:include="head :: top">
       </div>

       <h3>使用整个文件作为复用的内容(整个文件作为模板使用)</h3>
       <div th:include="footer :: html"></div>
       <br>
       <div th:include="footer"></div>
       <br>
       <div th:insert="footer"></div>

       <br>
       <br>
       <h3>使用其他目录中的模板文件</h3>
       <div th:insert="common/left :: html"></div>
       <br>
       <div th:include="common/left"></div>
   </div>
</body>
</html>

 (4)springboot的总结:重要

SpringBoot还是Spring+SpringMVC,只不过SpringBoot强调的是起步了依赖、自动配置

通过起步依赖、自动配置,我们可以实现我们的一些对象简化的使用,不用在去写那些配置文件,不用再写配置文件的内容了,所以说用SpringBoot更加方便开发效率更高。

红色的是很重要的 

 (5)springboot注解的总结 重要

 @RequestMapping:指定访问路径的

@GetMapping:接收get方式的请求的

猜你喜欢

转载自blog.csdn.net/dengfengling999/article/details/125854320