Idea控制台打印彩色、带背景的日志
前言
日志在项目中非常常见,一般我们都是打印默认的日志。通过System.out.print(“xxx”) 或者 log.info(“xxx”) 等来打印日志。但有时我们需要打印一些彩色的日志,比如我们调试日志时,想要打印一个日志,然后在控制台定位问题,但如果控制台日志非常多,就需要找好长一段时间,如果日志是彩色的那么就很好定位了。
实现
只需要在 打印日志时日志体前后加上特殊字符即可,如下。
@Slf4j
public class TestController {public static void main(String[] args) {System.out.println("我是一条log");/* 日志字体颜色 */System.out.println(ConsoleColors.GREY+"我是一条log,我有颜色吗"+ConsoleColors.RESET);log.info(ConsoleColors.WHITE+"我是一条log,我有颜色吗"+ConsoleColors.RESET);/* 日志背景颜色 */log.info(ConsoleColors.YELLOW_BACKGROUND+"我是一条log,我有背景吗"+ConsoleColors.RESET);/* 日志字体加粗颜色 */log.info(ConsoleColors.RED_BOLD+"我是一条特殊log"+ConsoleColors.RESET);/* 日志字体加粗颜色 */log.info(ConsoleColors.RED_UNDERLINED+"我是一条特殊log"+ConsoleColors.RESET);}
}
具体颜色常量如下。
public class ConsoleColors {// Resetpublic static final String RESET = "\033[0m"; // Text Reset// Regular Colorspublic static final String WHITE = "\033[0;30m"; // WHITEpublic static final String RED = "\033[0;31m"; // REDpublic static final String GREEN = "\033[0;32m"; // GREENpublic static final String YELLOW = "\033[0;33m"; // YELLOWpublic static final String BLUE = "\033[0;34m"; // BLUEpublic static final String PURPLE = "\033[0;35m"; // PURPLEpublic static final String CYAN = "\033[0;36m"; // CYANpublic static final String GREY = "\033[0;37m"; // GREY// Boldpublic static final String WHITE_BOLD = "\033[1;30m"; // WHITEpublic static final String RED_BOLD = "\033[1;31m"; // REDpublic static final String GREEN_BOLD = "\033[1;32m"; // GREENpublic static final String YELLOW_BOLD = "\033[1;33m"; // YELLOWpublic static final String BLUE_BOLD = "\033[1;34m"; // BLUEpublic static final String PURPLE_BOLD = "\033[1;35m"; // PURPLEpublic static final String CYAN_BOLD = "\033[1;36m"; // CYANpublic static final String GREY_BOLD = "\033[1;37m"; // GREY// Underlinepublic static final String WHITE_UNDERLINED = "\033[4;30m"; // WHITEpublic static final String RED_UNDERLINED = "\033[4;31m"; // REDpublic static final String GREEN_UNDERLINED = "\033[4;32m"; // GREENpublic static final String YELLOW_UNDERLINED = "\033[4;33m"; // YELLOWpublic static final String BLUE_UNDERLINED = "\033[4;34m"; // BLUEpublic static final String PURPLE_UNDERLINED = "\033[4;35m"; // PURPLEpublic static final String CYAN_UNDERLINED = "\033[4;36m"; // CYANpublic static final String GREY_UNDERLINED = "\033[4;37m"; // GREY// Backgroundpublic static final String WHITE_BACKGROUND = "\033[40m"; // WHITEpublic static final String RED_BACKGROUND = "\033[41m"; // REDpublic static final String GREEN_BACKGROUND = "\033[42m"; // GREENpublic static final String YELLOW_BACKGROUND = "\033[43m"; // YELLOWpublic static final String BLUE_BACKGROUND = "\033[44m"; // BLUEpublic static final String PURPLE_BACKGROUND = "\033[45m"; // PURPLEpublic static final String CYAN_BACKGROUND = "\033[46m"; // CYANpublic static final String GREY_BACKGROUND = "\033[47m"; // GREY// High Intensitypublic static final String WHITE_BRIGHT = "\033[0;90m"; // WHITEpublic static final String RED_BRIGHT = "\033[0;91m"; // REDpublic static final String GREEN_BRIGHT = "\033[0;92m"; // GREENpublic static final String YELLOW_BRIGHT = "\033[0;93m"; // YELLOWpublic static final String BLUE_BRIGHT = "\033[0;94m"; // BLUEpublic static final String PURPLE_BRIGHT = "\033[0;95m"; // PURPLEpublic static final String CYAN_BRIGHT = "\033[0;96m"; // CYANpublic static final String GREY_BRIGHT = "\033[0;97m"; // GREY// Bold High Intensitypublic static final String WHITE_BOLD_BRIGHT = "\033[1;90m"; // WHITEpublic static final String RED_BOLD_BRIGHT = "\033[1;91m"; // REDpublic static final String GREEN_BOLD_BRIGHT = "\033[1;92m"; // GREENpublic static final String YELLOW_BOLD_BRIGHT = "\033[1;93m";// YELLOWpublic static final String BLUE_BOLD_BRIGHT = "\033[1;94m"; // BLUEpublic static final String PURPLE_BOLD_BRIGHT = "\033[1;95m";// PURPLEpublic static final String CYAN_BOLD_BRIGHT = "\033[1;96m"; // CYANpublic static final String GREY_BOLD_BRIGHT = "\033[1;97m"; // GREY// High Intensity backgroundspublic static final String WHITE_BACKGROUND_BRIGHT = "\033[0;100m";// WHITEpublic static final String RED_BACKGROUND_BRIGHT = "\033[0;101m";// REDpublic static final String GREEN_BACKGROUND_BRIGHT = "\033[0;102m";// GREENpublic static final String YELLOW_BACKGROUND_BRIGHT = "\033[0;103m";// YELLOWpublic static final String BLUE_BACKGROUND_BRIGHT = "\033[0;104m";// BLUEpublic static final String PURPLE_BACKGROUND_BRIGHT = "\033[0;105m"; // PURPLEpublic static final String CYAN_BACKGROUND_BRIGHT = "\033[0;106m"; // CYANpublic static final String GREY_BACKGROUND_BRIGHT = "\033[0;107m"; // GREY
}
测试
测试结果如下:
Idea控制台打印彩色、带背景的日志相关推荐
- mybatis-plus配置控制台打印完整带参数SQL语句
问题背景 通常我们开发的时候,需要联合控制台和Navicat/PLSQL等工具进行语句的拼接检查,如果只是输出了一堆???,那么将极大降低我们的效率.因此我们需要输出完整的SQL语句以便调试. Upd ...
- idea 设置log级别_IDEA+Log4j2 设置控制台打印彩色日志(示例代码)
在Log4j 2.10以前的版本,pattern中配置%highlight属性是可以正常打印彩色日志的 例如: pattern: "%d{yyyy-MM-dd HH:mm:ss.SSS} % ...
- VS-c++控制台打印彩色字
如题,简略代码如下 #include <iostream> #include <Windows.h> //VS 自带的头文件 using namespace std; /*打印 ...
- pycharm控制台打印彩色字体、python打印彩色字体
一.前言 构建命令行程序很酷:命令行可以按照我们的设定完成相应的工作,相比 GUI 界面程序,无需花费大量时间设计 GUI 界面.但要使命令行程序更吸引人,仅使用普通的打印功能是无法实现的. 一个很好 ...
- 在浏览器控制台打印彩色文字
浏览器控制台我们一般都是用来打印一些信息,来调试我们的代码.但是控制台也可以变得多姿多彩. console.log("%c 前端开发 %c v1.2.0 ", 'color:#ff ...
- mybatis-plus控制台打印SQL
方法一.在application.yml添加配置 #mybatis-plus配置控制台打印完整带参数SQL语句 mybatis-plus:configuration:log-impl: org.apa ...
- 控制台打印带颜色的字符
写Java程序的时候,为了看到程序的状态,省事时会写很多的System.out.这本来是为了看程序运行状态,结果满屏幕的输出,看起来很费劲.同样的情况出现在tomcat的日志上,System.out和 ...
- java如何设置控制台打印的字体颜色、背景、字体样式(idea设置打印字体样式)工具类 - 附插件方式
效果: 设置控制台打印字体颜色.背景.字体样式,java工具类 package org.dxl.log;import java.util.Arrays;/*** 在控制台按照传入格式输出 ** @au ...
- shell 下使用 echo 打印彩色字体及彩色背景
对于shell中的终端打印感觉很好玩! 首先知道shell中终端打印有echo printf一般常用的就是echo咯: 注:字体颜色 重置=0,黑色=30,红色=31,绿色=32, ×××=33,蓝色 ...
最新文章
- DB性能调优之RAID比较
- 网络:http请求之几种常见技术
- Google工程师:如何看待程序员普遍缺乏数据结构和算法知识?
- U3D屏幕坐标,世界坐标,像素坐标之间的关系
- # HDU - 6185 Covering
- [css] 举例说明跟字体相关的属性有哪些
- 一个很详细的web.xml讲解(转)
- Flutter 系列文章:Flutter Text 控件介绍
- ssm(spring + spring-mvc + mybatis)整合
- Android 学习之逐帧动画(Frame)
- access和wps哪个一样_Office与WPS哪个好?Office与WPS全面评测
- 使用jclasslib修改字节码/源码
- 创建选区快捷键是什么_ps选区的快捷键是什么
- 网上银行系统1:系统分析
- 活动预告|CoodeWisdom 软件智能化开发与运维学术报告系列 第4期(陈鹏飞 中山大学)...
- 【BasicNet系列:六】MobileNet 论文 v1 v2 笔记解读 + pytorch代码分析
- FTP上传成功之后却查找不到文件
- JSVM实现可伸缩视频编码(SVC)
- 使用git命令导出项目_git自动生成changelog及项目版本管理
- 14位IT高管及技术大牛谈Java的生态系统
热门文章
- threejs地球、星空、世界轮廓绘制、飞线、坐标涟漪 、旋转动画(上篇)
- Spring Boot项目健康检测
- 纸飞机飞行曲线matlab,纸飞机飞行最远的抛出角度数学建模分析
- 数字调制系列:如何理解IQ ?
- 计算机模拟技术在后处理中的应用,火灾模拟论文,关于计算机模拟技术在防火设计中的应用相关参考文献资料-免费论文范文...
- Linux下RTC时钟使用
- 通达OA V11.4漏洞 -代码审计
- 广义精确匹配-Coarsened Exact Matching (CEM)
- Kafka-Eagle 2.0.5安装
- FFMPEG -- av_guess_format