Springboot

本文介绍了如何在SpringBoot项目中集成Thymeleaf模板引擎,展示了Thymeleaf的基本语法,如变量表达式、对象绑定和条件判断等。同时,文章探讨了自定义Spring Boot Starter的两种方法,包括创建spring.factories文件和创建注解类,并详细阐述了每一步骤。通过自定义Starter,可以提升代码的复用性和开发效率。
摘要由CSDN通过智能技术生成

Thymeleaf集成

其他解析链接: thymeleaf详细讲解

在html标签内添加 xmlns:th=“http://www.thymeleaf.org” 把普通的html文件变成支持thymeleaf模板语言

th:text="${ }"

th:text="${ }" 获取服务器传过来的值

th:object="${ }" 把对象包起来,内部直接使用属性名称

th:each="${ }" 遍历

th:if="${ }"

th:unless="${ }" 判断成立或不成立

<!DOCTYPE html>
<!--
添加xmlns:th="http://www.thymeleaf.org"
把普通的html文件变成支持thymeleaf模板语言
-->
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>thymeleaf页面</title>
    <link rel="stylesheet" type="text/css" href="../static/css/style.css" th:href="@{/css/style.css}">
    <script type="text/javascript" src="../static/js/my.js" th:src="@{/js/my.js}"></script>
    <style>
        table{
            width: 300px;
            text-align: center;
        }
    </style>
</head>
<body>
    <h3>这是我的第一个thymeleaf页面</h3>
    <!-- 获取服务器传递回来的name键值 -->
    <p th:text="'姓名:'+${name}">初始姓名</p>
    <p th:utext="'姓名:'+${name}">初始姓名</p>
    <p th:text="'年龄:'+${age}">初始年龄</p>

    <h3>${}和*{}的效果一样</h3>
    <div>
        <p th:text="'编号:'+${user.id}"></p>
        <p th:text="'姓名:'+${user.name}"></p>
        <p th:text="'年龄:'+${user.age}"></p>
    </div>
    <form>
        <input type="text" name="id" th:value="${user.id}"><br/>
        <input type="text" name="name" th:value="${user.name}"><br/>
        <input type="text" name="age" th:value="${user.age}"><br/>
    </form>

    <div>
        <p th:text="'编号:'+*{user.id}"></p>
        <p th:text="'姓名:'+*{user.name}"></p>
        <p th:text="'年龄:'+*{user.age}"></p>
    </div>
    <form>
        <input type="text" name="id" th:value="*{user.id}"><br/>
        <input type="text" name="name" th:value="*{user.name}"><br/>
        <input type="text" name="age" th:value="*{user.age}"><br/>
    </form>

    <h3>th:object用对象包起来,内部直接使用属性名称</h3>
    <div th:object="${user}">
        <p th:text="'编号:'+*{id}"></p>
        <p th:text="'姓名:'+*{name}"></p>
        <p th:text="'年龄:'+*{age}"></p>
    </div>
    <form th:object="${user}">
        <input type="text" name="id" th:value="*{id}"><br/>
        <input type="text" name="name" th:value="*{name}"><br/>
        <input type="text" name="age" th:value="*{age}"><br/>
    </form>

    <table border="1">
        <tr>
            <th>编号</th>
            <th>姓名</th>
            <th>年龄</th>
        </tr>
        <tr th:each="user:${list}">
            <td th:text="${user.id}"></td>
            <td th:text="${user.name}"></td>
            <td th:text="${user.age}"></td>
        </tr>
    </table>

    <p th:if="${sex}==1">
        <input type="radio" value="1" checked>男
        <input type="radio" value="0">女
    </p>
    <p th:unless="${sex}==1">
        <input type="radio" value="1" >男
        <input type="radio" value="0" checked>女
    </p>

    <a href="http://www.baidu.com">百度</a>

</body>
</html>

自定义starter

其他解析链接: c语言中文网-自定义starter 解析

将一些繁琐的或者说是一些通过的功能封装成一个自定义的starter进行使用,提高开发效率

自定义starter的两种方法

一是创建spring.factories文件
二是创建一个注解类

创建spring.factories文件方法

分为以下 5 步:

  1. 定义 propertie 类
  2. 定义 Service 类
  3. 定义配置类
  4. 创建 spring.factories文件
  5. 构建starter

创建注解类方法

分为以下 5 步:

  1. 定义 propertie 类
  2. 定义 Service 类
  3. 定义配置类
  4. 创建注解类文件
  5. 构建starter

其中配置类中不需要加@Configuration注解,交由注解类导入使用

注解类

**
 * 自定义注解EnableHelloAutoConfiguration,用来装配HelloAutoConfiguration类
 */
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
//前三个为注解类的元注解
@Import(HelloAutoConfiguration.class)
public @interface EnableHelloAutoConfiguration {
}

注解类创建完成后在测试模块的启动类中添加该注解即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值