springboot服务和python服务如何自定义启动banner

shigen日更文章的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长,分享认知,留住感动。

shigen最近在修改ruoyi的框架,看到了框架自带的banner图,就是一个不爽,于是动手整改了一下。先来看下效果:

还算是比较个性化的,来看看怎么做的吧。其实也很简单,在项目的resources目录下新建文件banner.txt,写入如下的内容即可:

bash 复制代码
                        ${AnsiColor.BRIGHT_RED}_ooOoo_                       ${AnsiColor.BRIGHT_YELLOW}
                       ${AnsiColor.BRIGHT_RED}o8888888o                      ${AnsiColor.BRIGHT_YELLOW}
                       ${AnsiColor.BRIGHT_RED}88${AnsiColor.BRIGHT_YELLOW}" . "${AnsiColor.BRIGHT_RED}88                      ${AnsiColor.BRIGHT_YELLOW}
                       (| -_- |)                      ${AnsiColor.BRIGHT_YELLOW}
                       ${AnsiColor.BLUE}O${AnsiColor.BRIGHT_YELLOW}\  =  /${AnsiColor.BLUE}O                      ${AnsiColor.BRIGHT_YELLOW}
                    ____/`---'____                   ${AnsiColor.BRIGHT_YELLOW}
                  .'  \|     |//  `.                 ${AnsiColor.BRIGHT_YELLOW}
                 /  \|||  :  |||//  \                ${AnsiColor.BRIGHT_YELLOW}
                /  _||||| -:- |||||-  \               ${AnsiColor.BRIGHT_YELLOW}
                |   | \\  -  /// |   |               ${AnsiColor.BRIGHT_YELLOW}
                | _|  ''---/''  |   |               ${AnsiColor.BRIGHT_YELLOW}
                \  .-__  `-`  ___/-. /               ${AnsiColor.BRIGHT_YELLOW}
              ___`. .'  /--.--\  `. . __              ${AnsiColor.BRIGHT_YELLOW}
           ."" '<  `.____<|>_/___.'  >'"".           ${AnsiColor.BRIGHT_YELLOW}
          | | :  `- `.;`\ _ /`;.`/ - ` : | |         ${AnsiColor.BRIGHT_YELLOW}
          \  \ `-.   _ __\ /__ _/   .-` /  /         ${AnsiColor.BRIGHT_YELLOW}
     ${AnsiColor.BRIGHT_MAGENTA}======${AnsiColor.BRIGHT_YELLOW}`-.____`-.________/___.-`____.-'${AnsiColor.BRIGHT_MAGENTA}======
                        `=---='
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     ^        佛祖保佑             永无BUG        ^
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 ​
 ​

最后一行的换行也记得加上,当然也可以参照spirngboot官方的banner,可以打印spring的版本和spring boot的版本。

好奇心来了,java的可以用springboot,那python的用啥,用啥打印个性化的banner图呢?于是找了一下,用的flask框架,最后的效果是这样的:

注意:启动的时候不会输出banner,但是第一请求之后会输出。

代码如下:

python 复制代码
 # -*- encoding: utf-8 -*-
 __date__ = '2023/11/16 08:11:55'
 ​
 ​
 from flask import Flask
 import pyfiglet
 from termcolor import colored
 ​
 app = Flask(__name__)
 ​
 # 输出个性化带颜色的 banner
 @app.before_first_request
 def print_banner():
     banner_text = pyfiglet.figlet_format("Welcome to My Flask App!", font="slant")
     colored_banner = colored(banner_text, color="cyan")
     print(colored_banner)
 ​
 # 路由和视图函数
 @app.route('/')
 def hello_world():
     return 'Hello, World!'
 ​
 if __name__ == '__main__':
     app.run()

我们需要安装的库是pyfiglet,直接安装即可:

复制代码
 pip install pyfiglet

这个库可以指定其他的字体样式,通过指定 font 参数来选择不同的字体。

  1. standard: 标准字体,也是默认的字体样式。
  2. banner: 横幅字体,具有粗体和大号的效果。
  3. big: 大号字体,字符更加宽大。
  4. slant: 倾斜字体,字符倾斜且带有一些装饰性质的变化。
  5. italic: 斜体字体,字符以斜线倾斜。
  6. digital: 数字字体,字符由数字组成。
  7. small: 小号字体,字符比较短小。

以上就是今天分享的全部内容了,觉得不错的话,记得点赞 在看 关注支持一下哈,您的鼓励和支持将是shigen坚持日更的动力。同时,shigen在多个平台都有文章的同步,也可以同步的浏览和订阅:

平台 账号 链接
CSDN shigen01 shigen的CSDN主页
知乎 gen-2019 shigen的知乎主页
掘金 shigen01 shigen的掘金主页
腾讯云开发者社区 shigen shigen的腾讯云开发者社区主页
微信公众平台 shigen 公众号名:shigen

与shigen一起,每天不一样!

相关推荐
一条Go1 小时前
OnCall 时段路由:跨午夜、左闭右开与「Local 不是时区」
后端·架构·github
Moment1 小时前
不会后期的我,发现了一个开源胶片神器😍😍😍
前端·后端·开源
数据库小学妹1 小时前
pgbouncer 事务池:prepared statement、临时表与会话状态
数据库·后端·postgresql
三小河2 小时前
SWC 凭什么比 Babel 快 ?项目优化迁移踩坑记录
前端·后端
鶴哥只手遮天2 小时前
《Redis 8.10.3 深度剖析》系列 ·第 17 章. 一个迟到十六年的类型
redis·后端·开源
知守观3 小时前
同一个团队两套分包:DDD 四层落地后,domain 层最大的类还是 5885 行
java·后端·领域驱动设计
Anymous3 小时前
我手写的 Redis 锁,输给了 10 秒的 TTL
后端·架构
Rain的Java大神之路4 小时前
设计一套生产级 API 接口:从契约、安全、幂等到限流,我踩过的坑都在这了
java·后端·面试
SimonKing4 小时前
零配置也能白嫖前沿大模型!dsh-our-free-model插件真香警告
java·后端·程序员
nice_lcj5204 小时前
【从零理解 Spring AI · 15】让检索更准:先宽召回,再精排序
java·后端·rag·spring ai·ai应用开发·检索优化·重排序