使用Springboot打成jar包thymeleaf的问题

下面是关于“使用Springboot打成jar包thymeleaf的问题”的完整攻略。

1. 为什么需要使用Springboot打成jar包thymeleaf的问题

当我们使用Springboot构建web项目时,我们通常会使用thymeleaf模板引擎来编写html页面。当项目开发完成后,我们需要将其部署到服务器上,使其可以在服务器上运行。这时候,如果我们将项目打成war包并部署到服务器上,相对比较麻烦。而我们可以将项目打成jar包,然后通过命令行直接运行jar包就可以启动项目。这不仅方便了部署,也能减轻服务器的负担,同时也不会浪费服务器资源。而对于使用thymeleaf模板引擎的项目,需要在项目中配置资源文件才能正确地使用thymeleaf,否则会导致模板无法正确渲染。

2. 如何使用Springboot打成jar包thymeleaf?

下面将具体介绍如何使用Springboot打成jar包thymeleaf。

2.1 在Springboot项目中添加maven依赖

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

2.2 在Springboot项目中配置thymeleaf模板引擎

在application.properties中添加如下配置:

spring.thymeleaf.cache=false
spring.thymeleaf.enabled=true
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8

其中,spring.thymeleaf.prefix表示模板文件存放的路径,spring.thymeleaf.suffix表示模板文件的后缀名,一般为.html,spring.thymeleaf.mode表示模板渲染的模式,一般为HTML5,spring.thymeleaf.encoding表示模板文件的编码。

2.3 通过maven打成jar包

在pom.xml中添加如下配置:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

执行mvn clean package命令,生成jar包。

2.4 运行jar包

在终端中执行如下命令启动jar包:

java -jar <jar包路径>/xxx.jar

示例说明

例如,我们在项目中有一个index.html文件,代码如下:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Springboot + Thymeleaf Demo</title>
</head>
<body>
    <h1 th:text="${message}"></h1>
</body>
</html>

我们可以在Controller中定义如下方法:

@GetMapping("/")
public String index(Model model) {
    model.addAttribute("message", "Hello,World!");
    return "index";
}

然后在终端中执行mvn clean package命令,生成jar包。在终端中执行如下命令启动jar包:

java -jar <jar包路径>/xxx.jar

最后,在浏览器中访问http://localhost:8080,即可看到页面上显示Hello,World!

又如,在项目中除了index.html页面还有一个user.html页面,其中需要使用Thymeleaf标签库,代码如下:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Springboot + Thymeleaf Demo</title>
</head>
<body>
    <h1 th:text="${message}"></h1>
    <table border="1">
        <thead>
            <tr>
                <th>id</th>
                <th>name</th>
                <th>age</th>
            </tr>
        </thead>
        <tbody>
            <tr th:each="user : ${users}">
                <td th:text="${user.id}"></td>
                <td th:text="${user.name}"></td>
                <td th:text="${user.age}"></td>
            </tr>
        </tbody>
    </table>
</body>
</html>

我们可以在Controller中定义如下方法:

@GetMapping("/user")
public String user(Model model) {
    List<User> userList = new ArrayList<>();
    userList.add(new User(1L, "张三", 20));
    userList.add(new User(2L, "李四", 25));
    userList.add(new User(3L, "王五", 30));
    model.addAttribute("message", "User List");
    model.addAttribute("users", userList);
    return "user";
}

其中,User为一个自定义的Java类,用来描述用户信息。需要在在项目中添加如下依赖:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

然后在终端中执行mvn clean package命令,生成jar包。在终端中执行如下命令启动jar包:

java -jar <jar包路径>/xxx.jar

最后,在浏览器中访问http://localhost:8080/user,即可看到页面显示用户列表。

以上就是使用Springboot打成jar包thymeleaf的问题的完整攻略,希望能对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Springboot打成jar包thymeleaf的问题 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • CSS3制作半透明边框(Facebox)类似渐变

    下面是关于“CSS3制作半透明边框(Facebox)类似渐变”的详细攻略: 1. 什么是Facebox效果 Facebox效果是指通过CSS3技术制作的一种类似渐变的半透明边框效果,可以用于美化网页中的图片、文本框等元素,突出他们的重要性和美观度。Facebox效果具有注重细节、奇妙而简洁的特点,而且可以实现的方式也非常简单,接下来我将向你介绍Facebox…

    css 2023年6月9日
    00
  • CSS3动画特效在活动页中的应用

    CSS3动画特效在活动页中的应用攻略 CSS3动画特效已经成为活动页设计中的重要组成部分。据数据显示,在活动页中使用动画特效的页面浏览量要比普通网页高出很多。然而,如何在活动页中运用CSS3动画特效,来吸引和留住用户,却是值得探讨的问题。 一、基础知识 在运用CSS3动画特效之前,需先掌握以下基础知识: 1.1 CSS选择器 CSS选择器是CSS中最核心的部…

    css 2023年6月9日
    00
  • 实例讲解如何使用CSS保持页面内容宽高比

    下面是详细讲解如何使用CSS保持页面内容宽高比的完整攻略。 一、为什么要保持页面内容宽高比 在设计网页时,页面的美观性是非常重要的。而一个美观的网页通常需要保持页面内容的宽高比,这样可以让页面元素的布局更加协调和舒适,也能够优化移动设备的浏览体验。 二、如何使用CSS保持页面内容宽高比 1. 使用padding百分比 使用padding百分比是一种简单且有效…

    css 2023年6月10日
    00
  • 关于HTML的语义化标签和无语义化标签

    HTML语义化标签和无语义化标签是Web开发中常用的两种标签类型,它们的使用对于构建可读性高、易维护、SEO友好和语义化的结构化文档非常重要。下面将详细解释它们的区别和用法。 HTML语义化标签 HTML语义化标签是指按照文档内容所表达的语义含义来编写HTML标签,它们不仅仅可以提升页面的可读性和可访问性,还可以提高搜索引擎的抓取效率和页面的排名。HTML5…

    css 2023年6月10日
    00
  • 从零搭建Webpack5-react脚手架的实现步骤(附源码)

    下面我将详细讲解“从零搭建Webpack5-react脚手架的实现步骤(附源码)”的完整攻略。 实现步骤 1. 初始化项目 首先,我们需要创建一个空的 Node.js 项目。我们可以使用 npm 或者 yarn 来初始化项目,这里以使用 npm 为例: npm init -y 这会自动生成一个 package.json 文件,其中 -y 参数表示开启了自动配…

    css 2023年6月9日
    00
  • css教程:选择合适的、有意义的元素描述内容

    选择合适的、有意义的元素描述内容是CSS在前端开发中的重要指导原则之一。简单来说,就是在HTML代码中选择合适的HTML元素,并使用CSS对其进行样式修饰,从而让页面结构更加清晰、易读、易维护。下面是详细的攻略: 1. 选择合适的HTML元素 在HTML中,我们可以利用各种标签来描述网页的结构和内容,如 、 、 、 等。选择合适的HTML元素可以提高页面的可…

    css 2023年6月10日
    00
  • 如何利用CSS3制作3D效果文字具体实现样式

    以下是关于“如何利用CSS3制作3D效果文字具体实现样式”的完整攻略,包含两个示例说明。 制作3D效果文字的具体实现样式 CSS3提供了一些新的3D效果样式,可以用来制作3D效果文字。以下是一些常用的3D效果样式: 1. transform-style transform-style属性用于指定3D变换的子元素如何在3D空间中呈现。可以使用CSS的trans…

    css 2023年5月18日
    00
  • Python制作可视化报表的示例详解

    下面我将详细讲解“Python制作可视化报表的示例详解”的完整攻略。 简介 在数据分析过程中,可视化报表是一个非常重要的环节。Python作为一门流行的数据分析语言,自然也提供了相应的工具来制作可视化报表。Python可以使用多种可视化库来制作可视化报表,其中比较流行的有Matplotlib、Seaborn、Plotly等。本文将介绍使用Matplotlib…

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