SpringApplication类提供了一种方便的方法来引导Spring应用程序,从main()方法开始。在许多情况下,可以委托给静态

springApplication.run方法,如下例所示:

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

当应用程序启动时,您应该看到类似于以下输出的内容:

默认情况下,将显示信息日志消息,包括一些相关的启动详细信息,例如启动应用程序的用户。如果需要一个日志级别而不是信息,您可以设置它。

启动失败

如果应用程序无法启动,注册的故障分析器将有机会提供专用的错误消息和修复问题的具体操作。例如,如果在上启动Web应用程序端口8080和该端口已在使用中,您应该看到类似于以下消息的内容:

APPLICATION FAILED TO START
***************************
Description:
Embedded servlet container failed to start. Port 8080 was already in use.
Action:
Identify and stop the process that's listening on port 8080 or configure this application to listen on another port

如果没有故障分析器能够处理异常,仍然可以显示完整的状况报告,以便更好地了解出了什么问题。

因此,需要为启用调试属性或启用调试日志记录

org.springframework.boot.autoconfigure.logging.conditionEvaluationReportLoggingListener。

例如,如果使用Java-jar运行应用程序,则可以启用调试。

属性如下:$ java -jar myproject-0.0.1-SNAPSHOT.jar --debug

定制Banner

可以通过在类路径中添加banner.txt文件来更改在启动时打印的标题,或者将spring.banner.location属性设置为此类文件的位置。如果文件除了utf-8之外的编码,可以设置spring.banner.charset。除了文本文件之外,还可以还可以将banner.gif、banner.jpg或banner.png图像文件添加到类路径或设置spring.banner.image.location属性。图像转换为ASCII艺术表示

并在任何文本横幅上方打印。

在banner.txt文件中,可以使用以下任何占位符:

1. 第一种方式:修改的时候,进行设置,在Application的main方法中:

SpringApplication application = new SpringApplication(App.class);
/*
* Banner.Mode.OFF:关闭;
* Banner.Mode.CONSOLE:控制台输出,默认方式;
* Banner.Mode.LOG:日志输出方式;
/
application.setBannerMode(Banner.Mode.
OFF*);
application.run(args);

2. 第二种方式:修改banner.txt配置文件

在src/main/resouces下新建banner.txt,在文件中加入:

#这个是MANIFEST.MF文件中的版本号
${application.version}              #这个是上面的的版本号前面加v后上括号
${application.formatted-version}#这个是springboot的版本号
${spring-boot.version}             #这个是springboot的版本号
${spring-boot.formatted-version}

resource目录下面放入一个banner.txt文件,Spring Boot启动项目的时候就会优先启动这个文件中的内容。注意,不止在war包或者Fat Jar的resource目录放置会起效果,在任一插件的resource目录放置也可以生效。当然这里涉及到一个优先级的问题,在war包或Fat Jar中放置的优先级高于插件jar包的。

3. 第三种方式:重写接口Banner实现

SpringBoot提供了一个接口org.springframework.boot.Banner,他的实例可以被传给SpringApplication的setBanner(banner)方法。如果你闲得不行非要着重美化这个命令行输出的话,可以重写Banner接口的printBanner方法。

4. 第四种方式:在application.properties进行配置

在application.proerpties进行banner的显示和关闭:

### 是否显示banner,可选值[true|false]
spring.main.show-banner=false

yaml 文件中:

spring:main:banner-mode: "off"

实际上Spring Boot在这个位置,放了一个彩蛋,我们是可以自定义这个图标的。
我们可以在resource目录下面放入一个banner.txt
文件,Spring Boot启动项目的时候就会优先启动这个文件中的内容。
这里给大家推荐两个个字符画生成的网站,我们可以利用生成的字符串放入这个banner.txt
文件:

http://www.network-science.de/ascii/
http://patorjk.com/software/taag/

SpringBoot 2.1.5(12)--- Spring Boot 特性上相关推荐

  1. Spring Boot特性

    2019独角兽企业重金招聘Python工程师标准>>> SpringApplication SpringApplication类提供了一种从main()方法启动Spring应用的便捷 ...

  2. Spring Boot 特性

    Spring Boot 是 Spring 下的子项目,1.0版本发布于2014年1月,用于快速.敏捷的开发基于 Spring 的应用程序.通过自动配置省去了以往 Spring 开发中的 Java 配置 ...

  3. vueform表单文件上传_峰哥说技术系列-8.Spring Boot文件上传(Form表单和Ajax方式)

    今日份主题 Spring Boot文件上传(Form表单和Ajax方式) 在Spring Boot中,和文件上传的主要和MultipartResolver接口有关,他有两个实现类 StandardSe ...

  4. Spring Boot 批量上传: The field files exceeds its maximum permitted size of 1048576 bytes.

    Spring Boot 批量上传异常: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededExcep ...

  5. 理论 | 当 Spring Boot 遇上了消息队列......

    这是小小本周的第五篇,当Spring Boot 遇上了消息队列. Spring Boot 1.0 版本 在很远很远的以前,作为单体应用,只有一个Spring Boot 应用,当两个Spring Boo ...

  6. Spring Boot:上传文件大小超限制如何捕获 MaxUploadSizeExceededException 异常

    Spring Boot 默认上传文件大小限制是 1MB,默认单次请求大小是 10MB,超出大小会跑出 MaxUploadSizeExceededException 异常. 问题来了,当文件超过 1M ...

  7. Spring boot项目上传Linux服务器后 上传图片后,图片路径报404,图片路径映射问题

    问题 spring boot项目上传到Linux服务器后,头像上传后报404.但是我的打包的jar包在idea客户端运行是没问题的 解决 错误代码 @Overridepublic void addRe ...

  8. 全栈开发实战|Spring Boot文件上传与下载

    文件上传与下载是Web应用开发中常用的功能之一.接下来我们将讨论如何在Spring Boot的Web应用开发中,如何实现文件的上传与下载. 01.Spring Boot文件上传与下载 在实际的Web应 ...

  9. Spring Boot文件上传及回显(单/多文件)

    一.单文件上传 1.前端页面 <!DOCTYPE html> <html lang="en"> <head><meta charset=& ...

最新文章

  1. ps添加的阴影怎么去除_【PS摄影后期教程】去除阴影色块三种方法
  2. java优先队列PriorityQueue修改队列内元素排序问题
  3. 数据可视化模块---Matplotlib
  4. 重新实践《轻量级DJANGO》这本书
  5. DOMJavaScript示例练习
  6. iOS:位置相关(18-03-09更)
  7. yuv播放器/rgb播放器
  8. 针对dhtmlX当中的treegrid在java类当中的封装实现的步骤(后台代码)
  9. go有没有php的array,实现类似php的array_column方法
  10. 2021“华为杯”第十八届中国研究生数学建模竞赛有感
  11. 动词记忆(1):ate,ify,ish后缀常用词
  12. 微信小程序 -- 数据库数据excel文件批量导入
  13. 红光光浴,美容抗衰神器
  14. c语言动态与静态分配内存空间的区别
  15. 华为鸿蒙dba,人生中最重要的决策|读在职博士DBA
  16. 苹果手机计算机隐藏照片app,‎App Store 上的“加密计算器 - 隐藏私人相册视频”...
  17. 俩台虚拟机,一台有网,一台没网
  18. 数据分析之股票市场价格分析
  19. 解决PowerBuilder错误:unable to load the requested database interface please
  20. 微信企业支付发送到零钱

热门文章

  1. 【STM32】【STM32CubeMX】STM32CubeMX的使用之五:定时器时基配置及其中断
  2. Linux 内核的同步机制,第 1 部分(来自IBM)
  3. MySQL数据类型之BLOB与TEXT及其最大存储限制
  4. 《图解Http》8: 用户身份认证Cookie管理session; 9:HTTP的追加协议(websoket, webDAV)...
  5. JDBC Statements, PreparedStatement
  6. ajax ★ ★ ★ ★ ★
  7. signal.h-----信号函数
  8. ORACLE使用数据泵导入导出部分表
  9. 优秀的云存储解决方案Dropbox,现在注册就有2G
  10. [原]解决win2003 iis6 部署MVC 无法访问 403 的问题