Spring Boot 核心配置
设置 Banner 图标
在搭建 Spring Boot 项目环境时,程序启动后会在控制台打印醒目的 SpringBoot 图标,图标描述了Spring Boot 版本信息,这是 Spring Boot 项目与 Spring 项目启动区别较大的地方,Spring Boot 通过默认 Banner 在程序启动时显示应用启动图标,当然图标我们也可以进行自定义。
Banner 图标自定义
Spring Boot 项目启动时默认加载 src/main/resources 目录下的 banner.txt 图标文件,如果该目录文件未提供,则使用 Spring Boot 默认。在 main 目录下新建 resources 资源目录,并在该目录下新建banner.txt 文本文件,可以设置自定义图标。
打开网址: http://patorjk.com/software/taag/#p=display&f=Graffiti&t=Type%20Something
在线生成图标对应文本并将文本内容copy 到 banner.txt 中
启动Spring Boot 应用打印如下:
___________ _________ __ .__ .__
\__ ___/__.__.______ ____ / _____/ ____ _____ _____/ |_| |__ |__| ____ ____
| | < | |\____ \_/ __ \ \_____ \ / _ \ / \_/ __ \ __\ | \| |/ \ / ___\
| | \___ || |_> > ___/ / ( <_> ) Y Y \ ___/| | | Y \ | | \/ /_/ >
|____| / ____|| __/ \___ > /_______ /\____/|__|_| /\___ >__| |___| /__|___| /\___ /
\/ |__| \/ \/ \/ \/ \/ \//_____/
Banner 图标关闭
如果启动时不想要看到启动图标 ,这里也可以通过代码进行关闭操作,修改 StarterApplication 设置BannerMode 值为 Banner.Mode.OFF,启动 Spring Boot 应用关闭图标输出功能即可。
@SpringBootApplication
public class StarterApplication {
public static void main(String[] args) {
SpringApplication springApplication = new SpringApplication(StarterApplication.class);
// 设置 banner 图标关闭
springApplication.setBannerMode(Banner.Mode.OFF);
springApplication.run();
}
}
配置文件
Spring Boot 默认会读取全局配置文件,配置文件名固定为:application.properties 或application.yml,放置在 src/main/resources 资源目录下,使用配置文件来修改 SpringBoot 自动配置的默认值。
在 resources 资源目录下添加 application.properties 文件,配置信息如下:
# 在SpringBoot项目中,默认读取全局配置,配置名固定为application。常用的两种配置文件application.properties或application.yml
# 配置文件默认放在resources目录下
# 设置服务器相关信息
# 设置服务器的端口
server.port=8081
# 设置项目访问上下文路径
server.servlet.context-path=/sp
# 数据源配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxxx?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root
或者 application.yml 文件
# 在SpringBoot项目中,默认读取全局配置,配置名固定为application。常用的两种配置文件application.properties或application.yml
# 配置文件默认放在resources目录下
# 1.k:v表示键值对关系,冒号后面必须有一个空格
# 2.使用空格的缩进表示层级关系,空格数目不重要,只要是左对齐的一列数据,都是同一层级的
# 3.大小写敏感
# 4.缩进时不允许使用Tab键,只允许使用空格
# 5.松散表示:java中对于驼峰命名法,可用原名或使用-代替驼峰
# 端口号 上下文路径
server:
# 设置服务的端口
port: 8989
servlet:
# 项目的访问路径
context-path: /mvc
# 数据源配置
spring:
datasource:
type: com.mchange.v2.c3p0.ComboPooledDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/xxxx
username: root
password: root
Profile 配置
Profile 是 Spring 用来针对不同环境对不同配置提供支持的全局 Profile 配置使用 application- {profile}.yml,比如 application-dev.yml ,application-test.yml。
通过在 application.yml 中设置 spring.profiles.active=test|dev|prod 来动态切换不同环境,具体配置如下:
application-dev.yml 开发环境配置文件
server:
port: 8989
application-test.yml 测试环境配置文件
server:
port: 9999
application-prod.yml 生产环境配置文件
server:
port: 8686
application.yml 主配置文件
## 环境选择配置
spring:
profiles:
active: dev
启动Starter 查看控制台输入效果
修改 application.yml 设置 active 值为 prod
## 环境选择配置
spring:
profiles:
active: prod
启动Starter 再次查看控制台输入效果