Spring boot2.3.2系列学习(二)Spring Boot功能介绍端口错误分析及解决方案、延时初始化、自定义启动图标、关闭启动Banner等

本文介绍了Spring Boot 2.3.2中的一些关键特性,包括端口冲突的解决、延迟初始化的应用、自定义启动图像横幅以及关闭启动Banner的方法。此外,还讲解了如何创建Springboot启动的链式操作,应用程序的可用性状态,以及如何获取和使用启动参数。文章详细阐述了各个主题,并提供了相应的代码示例。
摘要由CSDN通过智能技术生成

错误分析及解决方案

Springboot 注册了一个FailureAnalyzers来分析错误及提出解决方案,在启动是会检测项目存在的错误。最常见的如下:

***************************
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.

这个告诉你8080端口被占用,让你停用使用8080端口的程序或换一个端口启动程序。

延迟加载

SpringApplication允许延迟地初始化应用程序。启用延迟初始化后,将根据需要创建bean,而不是在应用程序启动期间创建bean。因此,启用延迟初始化可以减少应用程序启动所花费的时间。在Web应用程序中,启用延迟初始化将导致许多与Web相关的Bean直到收到HTTP请求后才被初始化。
延迟初始化的缺点是,它可能会延迟发现应用程序问题的时间。如果错误配置的Bean延迟初始化,则启动期间将不再发生故障,并且只有在初始化Bean时问题才会变得明显。还必须注意确保JVM具有足够的内存来容纳所有应用程序的bean,而不仅仅是启动过程中初始化的bean。由于这些原因,默认情况下不启用延迟初始化,因此建议在启用延迟初始化之前先对JVM的堆大小进行微调。
可以使用SpringApplicationBuilder上的lazyInitialization方法或SpringApplication上的setLazyInitialization方法以编程方式启用延迟初始化。或者,可以使用spring.main.lazy-initialization属性启用它,如以下示例所示:

spring.main.lazy-initialization=true

自定义启动图像横幅

可以通过将banner.txt文件添加到类路径或将spring.banner.location属性设置为此类文件的位置来更改启动时打印的图像横幅。如果文件的编码不是UTF-8,则可以设置spring.banner.charset。除了文本文件之外,您还可以将banner.gif,banner.jpg或banner.png图像文件添加到类路径中,或设置spring.banner.image.location属性。图像将转换为ASCII艺术作品并打印在任何文本横幅上方。
贴张图感受一下:
自定义启动图像
原图如下:
在这里插入图片描述
当然如果你不喜欢springboot的启动图像也可以关闭它,只要在启动类中修改为如下代码即可:

public static void main(String[] args) {
   
    SpringApplication app = new SpringApplication(MySpringConfiguration.class);
    app.setBannerMode(Banner.Mode.OFF);
    app.run(args);
}

链式创建Springboot启动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值