1.简介
1.1 概述
The banner that is printed on start up can be changed by adding a
banner.txt
file to your classpath or by setting thespring.banner.location
property to the location of such a file. If the file has an encoding other than UTF-8, you can setspring.banner.charset
. In addition to a text file, you can also add abanner.gif
,banner.jpg
, orbanner.png
image file to your classpath or set thespring.banner.image.location
property. Images are converted into an ASCII art representation and printed above any text banner.
banner 是在启动时打印的内容,可以通过在 classpath 下添加 “ banner.txt” 文件或 设置“ spring.banner.location” 属性值来改变 banner 的内容。如果文件的编码不是UTF-8,则可以通过spring.banner.charset
进行设置。除了文本文件之外,您还可以在 classpath 下添加 banner.gif
,banner.jpg
或 banner.png
图像文件或设置 spring.banner.image.location
属性。图片将被转换为 ASCII 的形式进行展现并在文本内容之前打印。
1.2 特点
banner.txt 可以包含如下内容
Variable | Description |
---|---|
${application.version} |
The version number of your application, as declared in MANIFEST.MF . For example, Implementation-Version: 1.0 is printed as 1.0 . |
${application.formatted-version} |
The version number of your application, as declared in MANIFEST.MF and formatted for display (surrounded with brackets and prefixed with v ). For example (v1.0) . |
${spring-boot.version} |
The Spring Boot version that you are using. For example 2.2.8.RELEASE . |
${spring-boot.formatted-version} |
The Spring Boot version that you are using, formatted for display (surrounded with brackets and prefixed with v ). For example (v2.2.8.RELEASE) . |
${Ansi.NAME} (or ${AnsiColor.NAME} , ${AnsiBackground.NAME} , ${AnsiStyle.NAME} ) |
Where NAME is the name of an ANSI escape code. See AnsiPropertySource for details. |
${application.title} |
The title of your application, as declared in MANIFEST.MF . For example Implementation-Title: MyApp is printed as MyApp . |
The
SpringApplication.setBanner(…)
method can be used if you want to generate a banner programmatically. Use theorg.springframework.boot.Banner
interface and implement your ownprintBanner()
method.You can also use the
spring.main.banner-mode
property to determine if the banner has to be printed onSystem.out
(console
), sent to the configured logger (log
), or not produced at all (off
).
2.演示环境
- JDK 1.8.0_201
- Spring Boot 2.2.0.RELEASE、Spring Cloud Hoxton.RELEASE
- 构建工具(apache maven 3.6.3)
- 开发工具(IntelliJ IDEA )
3.演示代码
3.1 代码说明
自定义 banner.txt,在项目启动时打印自定义 banner
3.2 代码结构
3.3 maven 依赖
<dependencies>
<dependency>
<groupId>org.springfr