日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

SpringBoot中怎样基于slf4j封装日志类输出日志

發(fā)布時間:2025/3/19 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringBoot中怎样基于slf4j封装日志类输出日志 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

場景

slf4jGithub:

https://github.com/qos-ch/slf4j

實現(xiàn)

新建log包,包下新建Log.java

import org.slf4j.Logger; import org.slf4j.LoggerFactory;import java.util.HashMap; import java.util.Map;public class Log {private static String logPrefix = "badao log -> ";private static Log instance;private static Logger logger = null;private static Map<Class, Logger> loggerList = new HashMap<Class, Logger>();?//用于緩存logger對象/*** 定義私有構(gòu)造方法實現(xiàn)單例*/private Log() {}/*** 功能說明:獲取服務(wù)實例的靜態(tài)方法* 修改說明:* @author badao* @date* @param obj 傳入調(diào)用此方法的對象* @return*/public synchronized static Log getInst(Object obj) {if (instance == null) {instance = new Log();}Log.logger = loggerList.get(obj.getClass());if (Log.logger == null) {Log.logger = LoggerFactory.getLogger(obj.getClass());//Log.logger = Logger.getLogger(obj.getClass());loggerList.put(obj.getClass(), Log.logger);}return instance;}/*** 功能說明:獲取服務(wù)實例的靜態(tài)方法* 修改說明:* @author badao* @date* @param clazz 傳入調(diào)用此方法的類型* @return*/public synchronized static Log getInst(Class clazz) {if (instance == null) {instance = new Log();}Log.logger = loggerList.get(clazz);if (Log.logger == null) {Log.logger = LoggerFactory.getLogger(clazz);loggerList.put(clazz, Log.logger);}return instance;}/*** 功能說明:獲取服務(wù)實例的靜態(tài)方法* 修改說明:* @author badao* @date* @return*/public synchronized static Log getInst() {if (instance == null) {instance = new Log();}Log.logger = loggerList.get(Log.class);if (Log.logger == null) {Log.logger = LoggerFactory.getLogger(Log.class);loggerList.put(Log.class, Log.logger);}return instance;}public void trace(String message) {Log.logger.trace(logPrefix + message);}public void trace(String message, Throwable t) {Log.logger.trace(logPrefix + message, t);}public void debug(String message) {Log.logger.debug(logPrefix + message);}public void debug(String message, Throwable t) {Log.logger.debug(logPrefix + message, t);}public void info(String message) {Log.logger.info(logPrefix + message);}public void info(String message, Throwable t) {Log.logger.info(logPrefix + message, t);}public void warn(String message) {Log.logger.warn(logPrefix + message);}public void warn(String message, Throwable t) {Log.logger.warn(logPrefix + message, t);}public void error(String message,Object... arguments) {Log.logger.error(logPrefix + message,arguments);}public void error(String message, Throwable t, Object... arguments) {Log.logger.error(logPrefix + message,t,arguments);} }

使用的地方導(dǎo)入包

import com.badao.log.Log;

然后使用

?try {Log.getInst(this).debug("霸道測試成功!");} catch (Exception e) {Log.getInst(this).debug("霸道測試錯誤!"+e.getMessage());}

?

總結(jié)

以上是生活随笔為你收集整理的SpringBoot中怎样基于slf4j封装日志类输出日志的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。