目录
1、项目入口类 - SpringBootDemoApplication
2、了解核心注解 - @SpringBootApplication
一、Spring Boot框架概述
Spring Boot官网:https://spring.io/projects/spring-boot,当前Spring Boot GA (General Availability)版是2.7.0
二、Spring Boot基本配置
利用Spring Initializr
创建Spring Boot
项目
然后再配置项目基本信息
添加相关依赖
设置项目名称与保存位置
单击【Finish】按钮,完成项目初始化
1、项目入口类 - SpringBootDemoApplication
- 包含一个主方法作为入口类的入口方法
- 利用SpringApplication类的静态方法
run()
启动入口类实例,可以接收命令行参数
2、了解核心注解 - @SpringBootApplication
- @SpringBootApplication是Spring Boot的核心注解,是一个组合注解。
- 查看@SpringBootApplication的源代码
3、设置exclude属性值,关闭特定的自动配置
-
关闭数据源自动配置
查看数据源自动配置类 - DataSourceAutoConfiguration
(二)添加控制器与路由函数
- 直接在入口类上面添加
@Controller
注解,然后定义路由函数index()
(三)启动项目,查看结果
-
启动项目
访问http://localhost:8080
添加路由函数welcome()
,通过model
参数向前端模板页面传递数据
在templates
里创建welcome.html
,跟路由函数welcome()
里的逻辑视图名welcome
相对应
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org/">
<head>
<meta charset="UTF-8">
<title>Welcome</title>
<head>
<body>
<h3><span th:text="${message}">亲爱的朋友,欢迎访问Spring Boot世界~</span></h3>
</body>
</html>
说明:<span>
元素的内容是静态数据,客户端打开页面看到的数据
(四)定制与关闭启动标语
1、创建标语文件
- 在
resources
目录下创建banner.txt
文件(如果是其它文件名,将会被系统忽略)
2、生成艺术字符
通过Text to ASCII Art Generator (TAAG)网站生成字符
(五)配置应用属性文件
1、修改服务器的端口号
- 在
application.properties
文件里设置服务器端口号为8888
2、启动应用,查看控制台输出信息
- 可以看到,Tomcat服务器初始化的端口变成了
8888
3、启动浏览器,访问资源
- 访问
http://localhost:8888/welcome
在application.properties
文件里注释掉修改服务器端口号的语句,于是服务器端口号恢复成默认的8080
。
启动浏览器,访问http://localhost:8080
4、采用yaml格式的应用属性文件
- 将
application.properties
重命名application.yaml
配置属性的写法有点不同,是一种层次结构
注意:属性冒号后面必须有空格与属性值分开
(六)允许使用XML配置Spring
1、创建用户实体类
- 在
net.cm.boot.bean
包里创建User
类
package net.cm.boot.bean;
import java.util.Date;
public class User {
private int id;
private String username;
private String password;
private String telephone;
private Date registerTime;
private int popedom;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getTelephone() {
return telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
public Date getRegisterTime() {
return registerTime;
}
public void setRegisterTime(Date registerTime) {
this.registerTime = registerTime;
}
public int getPopedom() {
return popedom;
}
public void setPopedom(int popedom) {
this.popedom = popedom;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password