SpringBoot学习06--整合Thymeleaf

接上一篇 SpringBoot学习05–使用MyBatis-Plus代码生成器,在其基础上整合thymeleaf

1. 添加 thymeleaf 依赖

<dependency>
	<groupId>org.springframework.bootgroupId>
	<artifactId>spring-boot-starter-thymeleafartifactId>
dependency>

完整的pom.xml文件如下:


<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0modelVersion>
	<parent>
		<groupId>org.springframework.bootgroupId>
		<artifactId>spring-boot-starter-parentartifactId>
		<version>2.1.6.RELEASEversion>
		<relativePath/> 
	parent>
	<groupId>com.examplegroupId>
	<artifactId>demoartifactId>
	<version>0.0.1-SNAPSHOTversion>
	<name>demoname>
	<description>Demo project for Spring Bootdescription>

	<properties>
		<java.version>1.8java.version>
	properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.bootgroupId>
			<artifactId>spring-boot-starterartifactId>
		dependency>
		<dependency>
			<groupId>org.springframework.bootgroupId>
			<artifactId>spring-boot-starter-webartifactId>
		dependency>
		<dependency>
			<groupId>org.springframework.bootgroupId>
			<artifactId>spring-boot-starter-thymeleafartifactId>
		dependency>
		<dependency>
			<groupId>com.baomidougroupId>
			<artifactId>mybatis-plus-boot-starterartifactId>
			<version>3.1.2version>
		dependency>
		<dependency>
			<groupId>com.baomidougroupId>
			<artifactId>mybatis-plus-generatorartifactId>
			<version>3.1.2version>
		dependency>
		<dependency>
			<groupId>mysqlgroupId>
			<artifactId>mysql-connector-javaartifactId>
			<scope>runtimescope>
		dependency>
		<dependency>
			<groupId>com.alibabagroupId>
			<artifactId>druid-spring-boot-starterartifactId>
			<version>1.1.10version>
		dependency>
		
		<dependency>
			<groupId>org.freemarkergroupId>
			<artifactId>freemarkerartifactId>
		dependency>
		<dependency>
			<groupId>org.springframework.bootgroupId>
			<artifactId>spring-boot-starter-testartifactId>
			<scope>testscope>
		dependency>
	dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.bootgroupId>
				<artifactId>spring-boot-maven-pluginartifactId>
			plugin>
		plugins>
	build>

project>

2. application.yml中添加相应thymeleaf配置

完整的application.yml如下:

# datasource config
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/demo?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF-8
    username: root
    password: admin123
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
  thymeleaf:
    mode: HTML
    encoding: UTF-8
    prefix: classpath:/template/
    suffix: .html
    servlet:
      content-type: text/html
    cache: false

# mybatis config
mybatis-plus:
  mapper-locations: classpath:mappers/*.xml
  type-aliases-package: com.example.demo.model
  global-config:
    db-config:
      id-type: auto

3. 在 resources目录下新建 template目录存放页面

SpringBoot学习06--整合Thymeleaf_第1张图片
如上图,在 template 下面新建一个 account.html页面
account.html内容如下:


<html xmlns="http://www.w3.org/1999/xhtml" 
xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Titletitle>
head>
<body>
账号信息
<h3 th:text="${account.name}">h3>
body>
html>

4. 添加 AccountController 代码

package com.example.demo.controller;


import com.example.demo.entity.Account;
import com.example.demo.service.AccountService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.stereotype.Controller;

/**
 * 

* 前端控制器 *

* * @author zorroxu * @since 2019-07-05 */
@Controller @RequestMapping("/account") public class AccountController { @Autowired private AccountService accountService; @GetMapping("/{id}") public String getAccount(@PathVariable("id") Long id, Model model){ Account account = accountService.getById(id); model.addAttribute("account",account); return "account"; } }

5. 测试

DemoApplication.java代码如下

package com.example.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan(basePackages = "com.example.demo.dao")
public class DemoApplication {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}

}

启动,可以看到控制台输出如下
SpringBoot学习06--整合Thymeleaf_第2张图片
从上面可以看出,Tomcat启动成功,端口使用的是默认的 8080端口,如果想修改这个默认端口,可以在 application.yml中添加如下信息:

server:
  port: 9990  #这里改成9990,你可以改成自己想要的端口

现在来测试页面是否正确输出

在浏览器中输入 http://localhost:8080/account/1,可以看到页面显示如下:
SpringBoot学习06--整合Thymeleaf_第3张图片
至此,整合完成。

你可能感兴趣的:(Spring,Boot,学习)