Springboot项目自定义日志开头banner图像

一般springboot项目日志开头都是这样的:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.4.2)

但是别人的日志是这样的:


//                          _ooOoo_                               //
//                         o8888888o                              //
//                         88" . "88                              //
//                         (| ^_^ |)                              //
//                         O\  =  /O                              //
//                      ____/`---'\____                           //
//                    .'  \\|     |//  `.                         //
//                   /  \\|||  :  |||//  \                        //
//                  /  _||||| -:- |||||-  \                       //
//                  |   | \\\  -  /// |   |                       //
//                  | \_|  ''\---/''  |   |                       //
//                  \  .-\__  `-`  ___/-. /                       //
//                ___`. .'  /--.--\  `. . ___                     //
//              ."" '<  `.___\_<|>_/___.'  >'"".                  //
//            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
//            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
//      ========`-.____`-.___\_____/___.-`____.-'========         //
//                           `=---='                              //
//      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
//         佛祖保佑       永无BUG     永不修改                       //


                                                     __----~~~~~~~~~~~------___
                                          .  .   ~~//====......          __--~ ~~
                          -.            \_|//     |||\\  ~~~~~~::::... /~
                       ___-==_       _-~o~  \/    |||  \\            _/~~-
               __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
           _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
         .~       .~       |   \\ -_    /  /-   /   ||      \   /
        /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
        |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
                 '         ~-|      /|    |-~\~~       __--~~
                             |-~~-_/ |    |   ~\_   _-~            /\
                                  /  \     \__   \/~                \__
                              _--~ _/ | .-~~____--~-/                  ~~==.
                             ((->/~   '.|||' -_|    ~~-/ ,              . _||
                                        -_     ~\      ~~---l__i__i__i--~~_/
                                        _-~-__   ~)  \--______________--~~
                                      //.-~~~-~_--~- |-------~~~~~~~~
                                             //.-~~~--\



.--,       .--,
 ( (  \.---./  ) )
  '.__/o   o\__.'
     {=  ^  =}
      >  -  <
     /       \
    //       \\
   //|   .   |\\
   "'\       /'"_.-~^`'-.
      \  _  /--'         `
    ___)( )(___
   (((__) (__)))    高山仰止,景行行止.虽不能至,心向往之。
/*
 * ┌───┐   ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
 * │Esc│   │ F1│ F2│ F3│ F4│ │ F5│ F6│ F7│ F8│ │ F9│F10│F11│F12│ │P/S│S L│P/B│  ┌┐    ┌┐    ┌┐
 * └───┘   └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘  └┘    └┘    └┘
 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
 * │~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ BacSp │ │Ins│Hom│PUp│ │N L│ / │ * │ - │
 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ ├───┼───┼───┼───┤
 * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ | \ │ │Del│End│PDn│ │ 7 │ 8 │ 9 │   │
 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┤ + │
 * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter  │               │ 4 │ 5 │ 6 │   │
 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤     ┌───┐     ├───┼───┼───┼───┤
 * │ Shift  │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│  Shift   │     │ ↑ │     │ 1 │ 2 │ 3 │   │
 * ├─────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┴───┼───┤ E││
 * │ Ctrl│    │Alt │         Space         │ Alt│    │    │Ctrl│ │ ← │ ↓ │ → │ │   0   │ . │←─┘│
 * └─────┴────┴────┴───────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘
 */

要想在springboot项目开头打印这样的日志,可不是简单的log.info

首先自定义banner类,通过下面的网站创建自己想要的样式,复制过来:

package com.zhbr.api.config;

import org.springframework.boot.Banner;
import org.springframework.core.env.Environment;
import java.io.PrintStream;

public class AppBanner implements Banner {
    @Override
    public void printBanner(Environment environment, Class<?> sourceClass, PrintStream out) {
        out.println("\n"+
                "||========================================================================================================================================================||\n" +
                        "||  \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  ||\n" +
                        "||  $$$$$$$$\\ $$\\   $$\\ $$$$$$$\\  $$$$$$$\\         $$$$$$\\  $$$$$$$\\ $$$$$$\\        $$$$$$\\  $$$$$$$$\\ $$$$$$$\\  $$\\    $$\\ $$$$$$\\  $$$$$$\\  $$$$$$$$\\   ||\n" +
                        "||  \\____$$  |$$ |  $$ |$$  __$$\\ $$  __$$\\       $$  __$$\\ $$  __$$\\\\_$$  _|      $$  __$$\\ $$  _____|$$  __$$\\ $$ |   $$ |\\_$$  _|$$  __$$\\ $$  _____|  ||\n" +
                        "||      $$  / $$ |  $$ |$$ |  $$ |$$ |  $$ |      $$ /  $$ |$$ |  $$ | $$ |        $$ /  \\__|$$ |      $$ |  $$ |$$ |   $$ |  $$ |  $$ /  \\__|$$ |        ||\n" +
                        "||     $$  /  $$$$$$$$ |$$$$$$$\\ |$$$$$$$  |      $$$$$$$$ |$$$$$$$  | $$ |        \\$$$$$$\\  $$$$$\\    $$$$$$$  |\\$$\\  $$  |  $$ |  $$ |      $$$$$\\      ||\n" +
                        "||    $$  /   $$  __$$ |$$  __$$\\ $$  __$$<       $$  __$$ |$$  ____/  $$ |         \\____$$\\ $$  __|   $$  __$$<  \\$$\\$$  /   $$ |  $$ |      $$  __|     ||\n" +
                        "||   $$  /    $$ |  $$ |$$ |  $$ |$$ |  $$ |      $$ |  $$ |$$ |       $$ |        $$\\   $$ |$$ |      $$ |  $$ |  \\$$$  /    $$ |  $$ |  $$\\ $$ |        ||\n" +
                        "||  $$$$$$$$\\ $$ |  $$ |$$$$$$$  |$$ |  $$ |      $$ |  $$ |$$ |     $$$$$$\\       \\$$$$$$  |$$$$$$$$\\ $$ |  $$ |   \\$  /   $$$$$$\\ \\$$$$$$  |$$$$$$$$\\   ||\n" +
                        "||  \\________|\\__|  \\__|\\_______/ \\__|  \\__|      \\__|  \\__|\\__|     \\______|       \\______/ \\________|\\__|  \\__|    \\_/    \\______| \\______/ \\________|  ||\n" +
                        "||  \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  ||\n" +
                        "||========================================================================================================================================================||");
    }
}

修改springboot主方法类,指定自己创建的banner:

package com.zhbr.api;

import com.zhbr.api.config.AppBanner;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.web.ServerProperties;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.util.StopWatch;
import java.net.UnknownHostException;

@Slf4j
@SpringBootApplication
public class NxSwytApiAuto {
    public static void main(String[] args) throws UnknownHostException {
        StopWatch stopWatch = new StopWatch();
        stopWatch.start();
        ConfigurableApplicationContext context = new SpringApplicationBuilder(NxSwytApiAuto.class)
                .logStartupInfo(false)
                .banner(new AppBanner())
                .run(args);
        stopWatch.stop();

        Integer port = context.getBean(ServerProperties.class).getPort();
        log.info("API服务启动完成,耗时:{}s,请访问WEB: http://xxx.xxx.xxx.xxx:{} ", stopWatch.getTotalTimeSeconds(),port);
    }
}

如果想要文字类型的,可以访问以下网站,制作自己的专属样式:

http://patorjk.com/software/taag/#p=display&f=Graffiti&t=Type%20Something%20

如果想要图片样式的,可以访问以下网站,自己制作:

http://www.makepic.net/Tool/Image2ascii.html

猜你喜欢

转载自blog.csdn.net/weixin_44455388/article/details/121698305