1、创建项目

Spring Boot起步以及集成themaleaf_spring

2、选择Maven项目

Spring Boot起步以及集成themaleaf_maven_02

Spring Boot起步以及集成themaleaf_maven_03

Spring Boot起步以及集成themaleaf_html_04

Maven配置文件

Spring Boot起步以及集成themaleaf_html_05

Spring Boot起步以及集成themaleaf_spring_06

打开项目

查看项目结构

Spring Boot起步以及集成themaleaf_html_07

添加依赖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.0</modelVersion>

<groupId>com.imooc</groupId>
<artifactId>miaosha_1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>miaosha_1</name>
<url>http://maven.apache.org</url>

<!-- 1、spring-boot-starter-parent依赖 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>


<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<dependencies>
<!-- 2、添加Spring web依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!-- 3、添加thymeleaf依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

</dependencies>
</project>

错误通用编码

public class CodeMsg {

private int code;
private String msg;

//通用的错误码
public static CodeMsg SUCCESS = new CodeMsg(0, "success");
public static CodeMsg SERVER_ERROR = new CodeMsg(500100, "服务端异常");
public static CodeMsg BIND_ERROR = new CodeMsg(500101, "参数校验异常:%s");
//登录模块 5002XX
public static CodeMsg SESSION_ERROR = new CodeMsg(500210, "Session不存在或者已经失效");
public static CodeMsg PASSWORD_EMPTY = new CodeMsg(500211, "登录密码不能为空");
public static CodeMsg MOBILE_EMPTY = new CodeMsg(500212, "手机号不能为空");
public static CodeMsg MOBILE_ERROR = new CodeMsg(500213, "手机号格式错误");
public static CodeMsg MOBILE_NOT_EXIST = new CodeMsg(500214, "手机号不存在");
public static CodeMsg PASSWORD_ERROR = new CodeMsg(500215, "密码错误");

//商品模块 5003XX

//订单模块 5004XX

//秒杀模块 5005XX

private CodeMsg( ) {
}

private CodeMsg( int code,String msg ) {
this.code = code;
this.msg = msg;
}

public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}

public CodeMsg fillArgs(Object... args) {
int code = this.code;
String message = String.format(this.msg, args);
return new CodeMsg(code, message);
}

@Override
public String toString() {
return "CodeMsg [code=" + code + ", msg=" + msg + "]";
}


}

泛型

public class Result<T> {

private int code;
private String msg;
private T data;

/**
* 成功时候的调用
* */
public static <T> Result<T> success(T data){
return new Result<T>(data);
}

/**
* 失败时候的调用
* */
public static <T> Result<T> error(CodeMsg codeMsg){
return new Result<T>(codeMsg);
}

private Result(T data) {
this.data = data;
}

private Result(int code, String msg) {
this.code = code;
this.msg = msg;
}

private Result(CodeMsg codeMsg) {
if(codeMsg != null) {
this.code = codeMsg.getCode();
this.msg = codeMsg.getMsg();
}
}


public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
}

编写启动类

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MainApplication {

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


SampleController


@Controller
@RequestMapping("/demo")
public class SampleController {

/**
* 使用Model往模板里面传递参数
* @param model
* @return
*/
@RequestMapping("/hello/themaleaf")
public String themaleaf(Model model) {
model.addAttribute("name", "Joshua");
return "hello";
}

}

编写themaleaf配置

application.properties

#thymeleaf
# 前缀
spring.thymeleaf.prefix=classpath:/templates/
# 后缀
spring.thymeleaf.suffix=.html

创建themaleaf模板

hello.html

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

将resources添加到源码目录

鼠标右击resources->Mark Directory as ->Sources Root

右击MainApplication ->Run 'MainApplication'

访问:localhost:8080/demo/thymeleaf

备注:IDEA导入项目

Spring Boot起步以及集成themaleaf_maven_08

选中项目

Spring Boot起步以及集成themaleaf_html_09