详解spring Boot 集成 Thymeleaf模板引擎实例

我来为你详细讲解“详解SpringBoot集成Thymeleaf模板引擎实例”的攻略。

概述

在SpringBoot应用中,Thymeleaf是一种流行的模板引擎,具有出色的可维护性和可扩展性。本文将详细介绍如何使用SpringBoot集成Thymeleaf模板引擎,帮助开发者快速地搭建Web应用,并在其中使用Thymeleaf实现模板渲染。

集成Thymeleaf

  1. 建立Maven项目

在Eclipse、IntelliJ IDEA等IDE中,建立一个Maven项目,然后添加如下所示的依赖关系:

<dependencies>
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-thymeleaf</artifactId>
   </dependency>
</dependencies>

其中,spring-boot-starter-web用于开发Web应用,而spring-boot-starter-thymeleaf则用于集成Thymeleaf。

  1. 添加模板资源

在项目的/src/main/resources目录下,建立一个templates文件夹,并添加一个名为hello.html的模板文件,其内容如下:

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
    <head>
        <title>Thymeleaf Hello World</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    </head>
    <body>
        <h1 th:text="'Hello, ' + ${name} + '!'"></h1>
    </body>
</html>

上述代码中,我们定义了一个带有name变量的模板。这个变量将会被Thymeleaf渲染处理。

  1. 编写Java代码

在项目的/src/main/java目录下,建立一个名为com.example.demo的包,并添加一个名为DemoController的类,其代码如下:

package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class DemoController {
   @RequestMapping("/hello")
   public String hello(@RequestParam(value="name", required=false, defaultValue="World") String name, Model model) {
      model.addAttribute("name", name);
      return "hello";
   }
}

上述代码中,我们定义了一个Spring MVC的控制器,该控制器负责处理/helloURL的请求。在该方法中,我们从URL中获取了name参数,如果没有该参数,则默认为World。随后,我们使用Model对象将该参数传递给前端模板。

  1. 运行应用

在IDEA等IDE中,选择DemoApplication类中的main方法,运行起来。在浏览器中,输入http://localhost:8080/hello?name=John,即可看到应用输出的内容。

示例

下面是一个基于上述工程代码的示例:

@Controller
public class GreetingController {
    @GetMapping("/greeting")
    public String greeting(@RequestParam(name="name", required=false, defaultValue="World") String name, Model model) {
        model.addAttribute("name", name);
        return "greeting";
    }
}

这个方法实现了一个简单的“欢迎语”的功能。具体来说,当访问/greeting?name=John时,服务器将生成一个包含“Hello, John!”的欢迎语,并渲染给前端。

在该例子中,我们使用了一个@GetMapping注解,在/greeting路径下,处理了GET请求。同时,我们通过@RequestParam注解,从请求URL中获取了name参数,并将其传递给了模板。在返回值中,我们指定使用名为greeting的模板来渲染页面。

最后,我们将在src/main/resources/templates下建立一个名为greeting.html的模板,其内容如下所示:

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
    <head>
        <title>Thymeleaf Greeting</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    </head>
    <body>
        <h1 th:text="'Hello, ' + ${name} + '!'"></h1>
    </body>
</html>

上述代码中,我们再次定义了一个用于生成欢迎语的模板,该模板依靠${name}变量来确定要生成的内容。

现在,我们运行应用程序,访问http://localhost:8080/greeting?name=John,就可以看到一个简单的欢迎画面,其内容为“Hello, John!”。

总结

以上就是详解SpringBoot集成Thymeleaf模板引擎实例的攻略。需要注意的是,在实际开发中,我们可能还需要使用Thymeleaf的一些高级功能,例如条件和循环等语句。为此,建议开发者对Thymeleaf的语法和API做一定的了解。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解spring Boot 集成 Thymeleaf模板引擎实例 - Python技术站

(0)
上一篇 2023年5月15日
下一篇 2023年5月15日

相关文章

  • Spring Security实现用户名密码登录详解

    下面是Spring Security实现用户名密码登录的详细攻略: 实现步骤 1. 添加Spring Security的Maven依赖 在项目的pom.xml文件中添加以下Maven依赖。 <dependency> <groupId>org.springframework.boot</groupId> <artifa…

    Java 2023年5月20日
    00
  • ajax的json传值方式在jsp页面中的应用

    下面我将为你详细讲解“ajax的json传值方式在jsp页面中的应用”的攻略。 1. AJAX简介 AJAX(Asynchronous JavaScript and XML)即异步JavaScript和XML,是指通过JavaScript、XMLHttpRequest对象和DOM实现局部更新页面的技术。AJAX技术使得页面在不刷新的情况下,能够向服务器发起异…

    Java 2023年5月20日
    00
  • Spring AOP官方文档学习笔记(四)之Spring AOP的其他知识点

    1.选择哪种AOP (1) 使用Spring AOP比使用完整版的AspectJ更方便简单,因为不需要在开发和构建过程中引入AspectJ编译器以及织入器,如果我们只希望通知能够在Spring Bean上执行,那么选用Spring AOP就可以了,如果我们希望通知能够在不由Spring所管理的对象上执行,那么就需要使用AspectJ,如果我们希望为除方法以外…

    Java 2023年5月10日
    00
  • java Spring MVC4环境搭建实例详解(步骤)

    以下是关于“Java Spring MVC4环境搭建实例详解(步骤)”的完整攻略,其中包含两个示例。 Java Spring MVC4环境搭建实例详解(步骤) Spring MVC是一种基于Java的Web框架,它可以帮助我们快速地开发Web应用程序。在本文中,我们将讲解如何搭建Java Spring MVC4环境。 环境搭建步骤 搭建Java Spring…

    Java 2023年5月17日
    00
  • Spring Boot 快速搭建微服务框架详细教程

    下面我来详细讲解“SpringBoot快速搭建微服务框架详细教程”的完整攻略。 一、前置条件 在开始快速搭建微服务框架之前,需要确保已经安装好以下环境: JDK 8或以上版本 Maven IntelliJ IDEA或其他Java开发IDE工具 二、搭建微服务框架 1. 创建SpringBoot项目 在IntelliJ IDEA中创建新项目,选择Spring …

    Java 2023年5月15日
    00
  • SpringBoot入口类和@SpringBootApplication讲解

    Spring Boot是Spring框架的一个扩展,旨在通过提供默认的配置和简化特定的Spring应用程序的配置来减少初始配置工作。 Spring Boot提供了一个非常简单的方式来开发独立的,生产级别的Spring应用程序。 Spring Boot的核心是应用程序的入口类,注解@SpringBootApplication是主要的组件解析器。 SpringB…

    Java 2023年5月15日
    00
  • Java编程简单应用

    Java编程简单应用攻略 如果你想学习Java编程,以下是一些简单的步骤和示例说明,可帮助你入门。 安装Java 要开始编写Java应用程序,你需要安装Java开发工具包(Java Development Kit, JDK)。你可以在Oracle官方网站下载最新版本的JDK。 下载完成后,按照安装向导完成JDK的安装。安装完成后,通过在命令行中输入以下命令来…

    Java 2023年5月19日
    00
  • Java数据库连接池之DBCP浅析_动力节点Java学院整理

    Java数据库连接池之DBCP浅析 什么是数据库连接池 数据库连接池是数据库连接对象的一个容器。在程序初始化时,容器被创建,并装入足够的连接对象,在程序运行过程中,系统将连接对象放入容器中,并从容器中取出连接对象,使用完毕后再将连接对象放回容器中。 其中,连接对象是指一个数据库连接。对于Java来说,主流的数据库连接方式有两种,一种是JDBC(Java数据库…

    Java 2023年6月1日
    00
合作推广
合作推广
分享本页
返回顶部