SSM框架系列日志管理實現(xiàn)

      網(wǎng)友投稿 878 2022-05-29

      本博客介紹log4j的日志管理配置

      log4j.peroperties:

      在D盤創(chuàng)建一個logs的文件夾來存放日志

      ### set log levels ###

      log4j.rootLogger = info , Console , D

      #Console

      log4j.appender.Console=org.apache.log4j.ConsoleAppender

      log4j.appender.Console.layout=org.apache.log4j.PatternLayout

      log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

      log4j.logger.java.sql.ResultSet=INFO

      log4j.logger.org.apache=INFO

      log4j.logger.java.sql.Connection=INFO

      log4j.logger.java.sql.Statement=INFO

      log4j.logger.java.sql.PreparedStatement=INFO

      #output2file

      log4j.appender.D = org.apache.log4j.DailyRollingFileAppender

      log4j.appender.D.File = D\:/logs/log.log

      log4j.appender.D.Append = true

      log4j.appender.D.Threshold = INFO \#\# \u8F93\u51FAinfo\u7EA7\u522B\u4EE5\u4E0A\u7684\u65E5\u5FD7

      log4j.appender.D.layout = org.apache.log4j.PatternLayout

      log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} [ %t\:%r ] - [ %p ] %m%n

      寫個日志管理類:

      package com.appweb.core.logger;

      public class Logger {

      private org.apache.log4j.Logger logger;

      /**

      * 構(gòu)造方法,初始化Log4j的日志對象

      */

      private Logger(org.apache.log4j.Logger log4jLogger) {

      logger = log4jLogger;

      }

      /**

      * 獲取構(gòu)造器,根據(jù)類初始化Logger對象

      *

      * @param Class

      * Class對象

      * @return Logger對象

      */

      public static Logger getLogger(Class classObject) {

      return new Logger(org.apache.log4j.Logger.getLogger(classObject));

      }

      /**

      * 獲取構(gòu)造器,根據(jù)類名初始化Logger對象

      *

      * @param String

      * 類名字符串

      * @return Logger對象

      */

      public static Logger getLogger(String loggerName) {

      return new Logger(org.apache.log4j.Logger.getLogger(loggerName));

      }

      public void debug(Object object) {

      logger.debug(object);

      }

      public void debug(Object object, Throwable e) {

      logger.debug(object, e);

      }

      public void info(Object object) {

      logger.info(object);

      }

      public void info(Object object, Throwable e) {

      logger.info(object, e);

      }

      public void warn(Object object) {

      logger.warn(object);

      }

      public void warn(Object object, Throwable e) {

      logger.warn(object, e);

      }

      public void error(Object object) {

      logger.error(object);

      }

      public void error(Object object, Throwable e) {

      logger.error(object, e);

      }

      public void fatal(Object object) {

      logger.fatal(object);

      }

      public String getName() {

      return logger.getName();

      }

      public org.apache.log4j.Logger getLog4jLogger() {

      SSM框架系列之日志管理實現(xiàn)

      return logger;

      }

      public boolean equals(Logger newLogger) {

      return logger.equals(newLogger.getLog4jLogger());

      }

      }

      可以寫個BaseController的控制類

      然后將log的管理類加進(jìn)來,實現(xiàn)日志管理的重復(fù)使用

      package com.appweb.core.base;

      import javax.servlet.http.HttpServletRequest;

      import org.springframework.web.context.request.RequestContextHolder;

      import org.springframework.web.context.request.ServletRequestAttributes;

      import org.springframework.web.servlet.ModelAndView;

      import com.appweb.core.entity.Page;

      import com.appweb.core.entity.PageData;

      import com.appweb.core.logger.Logger;

      import com.appweb.core.utils.UuidUtil;

      public class BaseController {

      protected Logger logger = Logger.getLogger(this.getClass());

      private static final long serialVersionUID = 6357869213649815390L;

      /**

      * 得到分頁列表的信息

      */

      public static void logBefore(Logger logger, String interfaceName){

      logger.info("");

      logger.info("start");

      logger.info(interfaceName);

      }

      public static void logAfter(Logger logger){

      logger.info("end");

      logger.info("");

      }

      }

      然后每個控制類都extends這個BaseController,使用日志的時候叫調(diào)用logger日志管理類

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:Python 學(xué)習(xí)筆記6 讀寫文件
      下一篇:Linux內(nèi)核學(xué)習(xí)第7天
      相關(guān)文章
      亚洲av日韩av高潮潮喷无码| 亚洲精品国产av成拍色拍| 亚洲色精品VR一区区三区| 久久亚洲精品人成综合网| 亚洲国产成人精品无码区在线观看 | 在线观看日本亚洲一区| 亚洲一级毛片免费看| 亚洲成人黄色在线| 亚洲国产精品日韩在线| 亚洲大香伊人蕉在人依线| 亚洲国产精品一区二区久| 亚洲综合网美国十次| 青青草原精品国产亚洲av| 精品亚洲成a人片在线观看少妇| 亚洲尹人香蕉网在线视颅| 久久精品国产亚洲AV无码麻豆| 久久久久亚洲av无码专区| 亚洲精品日韩中文字幕久久久| 亚洲熟妇av一区二区三区下载| 亚洲人成免费网站| 亚洲情A成黄在线观看动漫软件| 亚洲熟妇自偷自拍另欧美| 亚洲精品美女久久7777777| 亚洲AV色欲色欲WWW| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 中文字幕在线亚洲精品| 亚洲小说区图片区另类春色| 亚洲色成人网站WWW永久| 亚洲av永久无码精品古装片| 亚洲日本精品一区二区| 亚洲最大中文字幕| 亚洲午夜无码毛片av久久京东热| 亚洲AV无码之国产精品| 亚洲国产精品无码久久青草| 国产亚洲精品拍拍拍拍拍| 亚洲爆乳无码一区二区三区| 97se亚洲综合在线| 精品亚洲456在线播放| 理论亚洲区美一区二区三区| 久久久久亚洲精品天堂久久久久久| 亚洲精品成人片在线观看精品字幕 |