编程其实是一件有趣的事情,尤其是它不面向资本压迫赶进度的时候。
毕业半年,硬是走上了在学校时心里最不想干的 java web工程师,走上了springboot搬砖的路。初入职场压力较大,不得不快点学会要用的技能,于是就走马观花,把很多第一面认为新奇的东西都视而不见。因此特开一帖,用作记录接触新鲜东西的感觉和一些自娱自乐的沙雕操作。
今天说的是springBoot项目启动打印的文本,banner.txt
有没有熟悉的感觉?是的,这就是springboot项目启动时默认打印的banner.txt。只需要在项目的静态资源目录resources下加入banner.txt,项目启动时就会打印其中的内容,没有的话就会打印这个默认的。下面就开始我们的花里胡哨了,花式的banner:
现在工作的公司在用的:
_ _ ______ _ __ _
| | | | |___ / | |/ / | |
| |__| | / / | ' / | |
| __ | / / | < _ | |
| | | | / /__ | . \ | |__| |
|_| |_| /_____| |_|\_\ \____/
${AnsiColor.BRIGHT_MAGENTA}
HZKJ Spring Boot Version: ${spring-boot.version}
${AnsiColor.BRIGHT_YELLOW}
////////////////////////////////////////////////////////////////////
// _ooOoo_ //
// o8888888o //
// 88" . "88 //
// (| ^_^ |) //
// O\ = /O //
// ____/`---'\____ //
// .' \\| |// `. //
// / \\||| : |||// \ //
// / _||||| -:- |||||- \ //
// | | \\\ - /// | | //
// | \_| ''\---/'' | | //
// \ .-\__ `-` ___/-. / //
// ___`. .' /--.--\ `. . ___ //
// ."" '< `.___\_<|>_/___.' >'"". //
// | | : `- \`.;`\ _ /`;.`/ - ` : | | //
// \ \ `-. \_ __\ /__ _/ .-` / / //
// ========`-.____`-.___\_____/___.-`____.-'======== //
// `=---=' //
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //
// 佛祖保佑 永不宕机 永无BUG //
////////////////////////////////////////////////////////////////////
关于上面个性化的banner可以自己去创作、收集或者去网站生成。还有看到教程说放入banner.gif就可以在启动前打印gif的每一帧,我稍微试了下没成功。下面说下banner的配置:
1.banner的开启和关闭
banner可以通过在启动类里这样关闭:
public static void main(String[] args) {
//SpringApplication.run(App.class, args);
//Banner.Mode.OFF 关闭
SpringApplication springApplication = new SpringApplication(App.class);
springApplication.setBannerMode(Banner.Mode.OFF);
springApplication.run(args);
}
banner还可以通过Edit Configuration里勾选Hide banner 复选框关闭:
2.banner的显示配置
可以在txt中的配置:
${AnsiColor.BRIGHT_RED}:设置控制台中输出内容的颜色
${AnsiBackground.BRIGHT_RED}:设置控制台中输出内容背景色
${application.version}:用来获取MANIFEST.MF文件中的版本号
${application.formatted-version}:格式化后的${application.version}版本信息
${spring-boot.version}:Spring Boot的版本号
${spring-boot.formatted-version}:格式化后的${spring-boot.version}版本信息
例如我上面的第一个banner就用到了${AnsiColor.BRIGHT_MAGENTA}来设置输出颜色。
也可以在配置文件spring配置文件中配置:
# BANNER
spring.banner.charset=UTF-8 # Banner file encoding.
spring.banner.location=classpath:banner.txt # Banner text resource location.
spring.banner.image.location=classpath:banner.gif # Banner image file location (jpg or png can also be used).
spring.banner.image.width=76 # Width of the banner image in chars.
spring.banner.image.height= # Height of the banner image in chars (default based on image height).
spring.banner.image.margin=2 # Left hand image margin in chars.
spring.banner.image.invert=false # Whether images should be inverted for dark terminal themes.