Spring Boot - Thymeleaf 实战指南

Thymeleaf 是一个基于 Java 的服务端模板引擎,它不仅适用于 Web 环境,也能在独立环境中运行。它能够处理 HTML、XML、JavaScript、CSS 甚至纯文本。与 JSP 相比,它功能更为强大,主要负责 UI 上的动态内容渲染。该引擎允许后端和前端开发人员在同一个视图上并行工作。它可以直接访问 Java 对象和 Spring Bean,并将它们与 UI 进行绑定。当我们创建任何 Web 应用程序时,它通常与 Spring MVC 结合使用。那么,让我们从一个示例开始,了解一下 Thymeleaf 是如何与 Spring 框架协作的。

项目搭建

在这里,我们将在“员工(Employee)”数据集上执行 CRUD(增删改查)操作。为了构建这个项目,我们需要添加某些依赖项,这些依赖项以列表形式列出,同时也包含在 pom.xml 中。

  • Spring Web(使用 Spring MVC 构建 Web 应用,包括 RESTful 应用。默认使用 Apache Tomcat 作为嵌入式容器。)
  • Spring Data JPA(使用 Spring Data 和 Hibernate 通过 Java 持久化 API 在 SQL 存储中持久化数据。)
  • Spring Boot Devtools(提供快速应用重启、LiveReload 以及用于增强开发体验的配置)
  • MySQL Driver(MySQL JDBC 和 R2DBC 驱动程序)
  • Thymeleaf(适用于 Web 和独立环境的服务端 Java 模板引擎。允许 HTML 在浏览器中作为静态原型正确显示。)

POM.XML



    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.6.2
         
    
    com.example
    thymeleaf
    0.0.1-SNAPSHOT
    thymeleaf
    Demo project for Spring Boot
    
        17
    
    
        
            org.springframework.boot
            spring-boot-starter-data-jpa
        
        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        
        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-devtools
            runtime
            true
        
        
            mysql
            mysql-connector-java
            runtime
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    

application.properties 文件

spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/emp
spring.datasource.username=root
spring.datasource.password=root
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type=TRACE

Employee Pojo (实体类)

这是一个简单的 Pojo 类,用于存储 Employee 的数据。

package com.microservice.modal;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity
public class Employee {
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private long id;
    private String name;
    private String email;
    
    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
}

Employee Service 接口和 EmployeeServiceImpl 类

“`java

package com.microservice.service;

import java.util.List;

import c

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/23408.html
点赞
0.00 平均评分 (0% 分数) - 0