在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何借助log4j把日志写入数据库中

120次阅读
没有评论

共计 1106 个字符,预计需要花费 3 分钟才能阅读完成。

如何借助 log4j 把日志写入数据库中,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

        log4j 是一个优秀的开源日志记录项目,我们不仅可以对输出的日志的格式自定义,还可以自己定义日志输出的目的地,比如:屏幕,文本文件,数据 库,甚至能通过 socket 输出。本节使用 MySQL 数据库主要讲述如何将日志信息输入到数据库中。
        用 log4j 将日志写入数据库主要用到是 log4j 包下的 JDBCAppender 类,它提供了将日志信息异步写入数据的功能,我们可以直接使用这个类将我 们的日志信息写入数据库;也可以扩展 JDBCAppender 类,就是将 JDBCAppender 类作为基类进行二次开发获得一个新的具有所有 JDBCAppender 类属性和行为的子类。
        下面可以直接使用 log4j 包下的 JDBCAppender 类,通过一个实例来讲解 log4j 是如何将日志信息写入数据库的:
        需求:我们在软件开发的过程中需要将调试信息、操作信息等记录下来,以便后面的审计,这些日志信息包括用户 ID、用户姓名、操作类、路径、方法、操作时间、日志信息。

        设计思想:我们采用 JDBCAppender 类直接将日志信息插入数据库,所以只需要在配置文件中配置此类就可以; 要获得用户信息需要用过滤器来实现(假如不需要用户的信息,就不需要设计过滤器,其实大部分情况下都是需要这些用户信息,尤其是在 web 应用开发中)。在日志信息中获得用户信息,就是通过过滤器的 request 或 session 对象来实现的,可是用户信息怎样传到 log4j 呢,log4j 为我们提供 MDC 这一 log4j 中非常有用的类,它用于存储应用程序的上下文信息(context Infomation),从而便于在 log 中使用这些上下文信息。MDC 内部使用了类似 map 的机制来存储信息,上下文信息也是每个线程独立地储存,所不同的是信息都是以它们的 key 值存储在“map”中。相对应的方法为:“MDC.put(key, value); MDC.remove(key); MDC.get(key);”。在配置 PatternLayout 的时候使用:%x{key} 来输出对应的 value)。有了 MDC,我们可以在过滤器中先获得用户信息,再用 MDC.Put(“key”)方法,log 在执行 sql 语句时通过 %x{key} 来输出对应的 value。

关于如何借助 log4j 把日志写入数据库中问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注丸趣 TV 行业资讯频道了解更多相关知识。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-17发表,共计1106字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产精品免费av片在线观看 | 成人午夜精品无码区 | 国产精品久久久久久亚洲av | 曰本一级毛片 | 日日摸日日碰人妻无码 | 天天操网站 | 99这里有精品 | 久久综合久久网 | 曰韩少妇内射免费播放 | 激情宗合 | 色视频免费观看 | 国产日韩精品欧美一区视频 | 国产精品国产三级在线高清观看 | 偷拍肉窝窝视频在线播放 | 青青在线久青草免费观看 | 国产白嫩美女在线观看 | 一级毛片播放 | 国产人成无码视频在线观看 | 亚洲精品乱码久久久久久自慰 | 久久久久国产精品嫩草影院 | 国产国语一级毛片在线视频 | 亚洲色偷拍另类无码专区 | 亚洲精品二区国产综合野狼 | 玩弄少妇人妻中文字幕 | 中文字幕欧美成人免费 | 国产亚洲精彩视频 | 极品熟妇大蝴蝶20p 极品丝袜高跟91白沙发在线 | 色噜噜成人综合网站 | 女人扒开屁股爽桶30分钟 | 老司机在线精品视频91免费观看 | 午夜久久久久久 | 国产精品亚洲国产三区 | 雯雯在工地被灌满精在线视频播放 | 国产人成视频在线观看 | 综合 欧美 小说 另类 图 | 亚洲中文字幕无码爆乳 | 成人黄色在线视频 | 美女很黄很黄是免费的 | 天天操天天摸天天碰 | 国产欧美日韩精品第一区 | 日韩 ed2k|