Spring Boot - Verwenden eines Farbstartbanners

1. Einleitung

Eine der liebenswerten Eigenschaften von Spring Boot ist das Startbanner. Im Laufe der Jahre hat sich Spring Boot weiterentwickelt, um verschiedene Arten von Bannern zu unterstützen. Beispielsweise wurden in Spring Boot 1.3 sowohl Text- als auch Hintergrundfarbenunterstützung für Banner hinzugefügt.

In diesem kurzen Tutorial werden wir uns die Unterstützung von Spring Boot-Farbbannern und deren Verwendung ansehen.

2. Ändern der Hintergrundfarbe

Um einem Spring Boot-Banner eine Hintergrundfarbe hinzuzufügen, müssen wir den Zeilen von banner.txt einfach den gewünschten Farbcode mit der AnsiBackground- Klasse voranstellen .

Erstellen wir beispielsweise eine banner.txt- Datei, um den gesamten Hintergrund rot zu machen:

${AnsiBackground.RED} ___ _ _ _ / __| ___ | | (_) __| | \__ \ / _ \ | | | | / _` | |___/ \___/ |_| |_| \__,_| ${AnsiBackground.DEFAULT}

Tatsächlich können wir in einem einzigen Banner so viele Hintergrundfarben verwenden, wie wir möchten .

Zum Beispiel könnten wir jede Linie auf ihre eigene Hintergrundfarbe einstellen. Wir stellen jeder Zeile einfach die gewünschte Farbe voran:

${AnsiBackground.RED} ____ _ __ ${AnsiBackground.BLUE} / __ \ ____ _ (_) ____ / /_ ____ _ __ ${AnsiBackground.YELLOW} / /_/ / / __ `/ / / / __ \ / __ \ / __ \| | /| / / ${AnsiBackground.GREEN} / _, _/ / /_/ / / / / / / / / /_/ // /_/ /| |/ |/ / ${AnsiBackground.MAGENTA}/_/ |_| \__,_/ /_/ /_/ /_/ /_.___/ \____/ |__/|__/ ${AnsiBackground.DEFAULT} 

Es ist wichtig zu beachten, dass bei der gesamten Anwendungsprotokollierung die letzte in banner.txt angegebene Hintergrundfarbe verwendet wird . Daher wird empfohlen, die Datei banner.txt immer mit der Standardfarbe zu beenden .

3. Ändern der Textfarbe

Um die Farbe des Textes zu ändern, können wir die AnsiColor- Klasse verwenden. Genau wie die AnsiBackground- Klasse verfügt sie über vordefinierte Farbkonstanten, aus denen wir auswählen können.

Wir stellen jeder Zeichengruppe einfach die gewünschte Farbe voran:

${AnsiColor.RED}.------.${AnsiColor.BLACK}.------. ${AnsiColor.RED}|A.--. |${AnsiColor.BLACK}|K.--. | ${AnsiColor.RED}| (\/) |${AnsiColor.BLACK}| (\/) | ${AnsiColor.RED}| :\/: |${AnsiColor.BLACK}| :\/: | ${AnsiColor.RED}| '--'A|${AnsiColor.BLACK}| '--'K| ${AnsiColor.RED}`------'${AnsiColor.BLACK}`------' ${AnsiColor.DEFAULT}

Wie bei der Hintergrundfarbe ist es wichtig, dass die letzte Zeile des Banners die Farbe immer auf die Standardeinstellungen zurücksetzt .

4. ANSI 8-Bit-Farbe

Eine der neuen Funktionen in Spring Boot 2.2 ist die Unterstützung von ANSI 8-Bit-Farben. Anstatt auf eine Handvoll vordefinierter Farben beschränkt zu sein, können wir sowohl Text- als auch Hintergrundfarben mit dem vollen Bereich von 256 Farben angeben .

Um die neuen Farben zu verwenden, akzeptieren die Eigenschaften AnsiColor und AnsiBackground jetzt einen numerischen Wert anstelle eines Farbnamens:

${AnsiColor.1}${AnsiBackground.233} ______ __________ .___ ___________ ${AnsiBackground.235} / __ \ \______ \| |\__ ___/ ${AnsiBackground.237} >< | | _/| | | | ${AnsiBackground.239}/ -- \ | | \| | | | ${AnsiBackground.241}\______ / |______ /|___| |____| ${AnsiBackground.243} \/ \/ ${AnsiBackground.DEFAULT}${AnsiColor.DEFAULT}

Beachten Sie, dass wir sowohl Text- als auch Hintergrundeigenschaften mischen können, wie wir möchten. Wir können sogar die neuen 8-Bit-Farbcodes und älteren Farbkonstanten im selben Banner mischen.

5. Schlussfolgerung

In diesem Artikel haben wir gesehen, wie Sie sowohl die Text- als auch die Hintergrundfarbe des Spring Boot-Banners ändern können.

Wir haben auch gesehen, wie neuere Versionen von Spring Boot ANSI 8-Bit-Farbcodes unterstützen.