Mybatis日志Log4j与Logback

这篇具有很好参考价值的文章主要介绍了Mybatis日志Log4j与Logback。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、Log4j与Logback的区别?

发展历史和维护

二、Slf4j 依赖

三、Logback使用

logback.xml配置文件

四、Log4j使用

五、查看日志内容


一、Log4j与Logback的区别?

发展历史和维护

Log4j是最早的Java日志框架之一,具有较长的历史;然而Log4j 1.x版本在性能和并发性方面存在一些限制,并且已经停止维护。

Logback是由Log4j创始人Ceki Gülcü开发的后继项目,旨在解决Log4j的问题,并提供更好的性能和可靠性,因此Logback可以被视为Log4j的升级版。

Logback是Log4j的升级版,具有更好的性能、效率和灵活性。如果你正在开始一个新项目或者计划升级现有项目的日志框架,Logback是一个较好的选择。

二、Slf4j 依赖

使用 Slf4j 可以让你的应用程序与具体的日志实现库解耦,从而可以灵活地切换和配置不同的日志库,例如 Log4j、Logback等。

打开项目的 pom.xml 文件,在其中添加依赖的配置。

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.32</version> <!-- 替换为您想要使用的Slf4j版本 -->
</dependency>

三、Logback使用

1、logback-core:logback-core是Logback框架的核心组件,它提供了日志记录的基本功能和API。它实现了日志事件的处理和分发,以及日志的格式化和输出等核心功能。logback-core是一个独立的模块,可以与其他日志门面(如Slf4j)配合使用。

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.2.6</version> <!-- 替换为您想要使用的版本 -->
</dependency>

2、logback-classic:logback-classic是logback框架的经典实现,它扩展了logback-core,并提供了对Slf4j的支持。它使用Slf4j作为日志门面,并提供了与Slf4j的互操作性,可以无缝地与Slf4j集成。logback-classic还提供了更多的功能,如上下文(Context)管理、日志配置文件解析、配置自动重新加载等。

 <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.2.6</version> <!-- 替换为您想要使用的Logback版本 -->
 </dependency>

logback.xml配置文件

在main的资源resources目录下创建 logback.xml 文件

这是一个简单的logback.xml配置文件,将日志输出到控制台,将日志输出到文件。

<configuration
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>logs/application.log</file>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    
    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="FILE"/>
    </root>
</configuration>

在代码中使用 Logback 记录日志,在你的 Java 代码中导入 Logback 的相关类。

例如,使用Logback的示例代码,放在测试类如下;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class 测试类名  {
    private static final Logger logger = LoggerFactory.getLogger(测试类名 .class);

    public void doSomething() {
        logger.info("Logging with Logback");
    }
}

四、Log4j使用

在 Maven 项目的 pom.xml 文件中,移除 Logback 的依赖项,并添加 Log4j 的依赖项。您可以使用以下依赖项配置;

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.32</version>
</dependency>

<dependency>
  <groupId>org.apache.logging.log4j</groupId>
  <artifactId>log4j-api</artifactId>
  <version>2.14.1</version>
</dependency>

<dependency>
  <groupId>org.apache.logging.log4j</groupId>
  <artifactId>log4j-core</artifactId>
  <version>2.14.1</version>
</dependency>

创建 Log4j 的配置文件,通常命名为 log4j2.xml。将以下内容复制到配置文件中;

确保 log4j2.xml 配置文件位于项目的类路径下(通常是 src/main/resources 目录)。

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="CONSOLE" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
        </Console>
        <File name="FILE" fileName="logs/application.log">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
        </File>
    </Appenders>
    <Loggers>
        <Root level="INFO">
            <AppenderRef ref="CONSOLE"/>
            <AppenderRef ref="FILE"/>
        </Root>
    </Loggers>
</Configuration>

在代码中使用 Log4j 进行日志记录,在你的 Java 代码中导入 Logback 的相关类。

例如,使用 Log4j 的示例代码,放在测试类如下。

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class 测试类名 {
    private static final Logger logger = LogManager.getLogger(测试类名.class);

    public void doSomething() {
        logger.info("Logging with Log4j");
    }
}

五、查看日志内容

1、运行应用程序:在 IDEA 中,选择您的应用程序的入口点类(例如 MyBatisTest),右键单击并选择 "Run" 或 "Debug"。

2、打开控制台窗口:一旦应用程序开始运行,控制台窗口将自动打开。

如果您无法看到控制台窗口,请在底部工具栏中选择 "View" -> "Tool Windows" -> "Run" 。

"View" -> "Tool Windows" -> "Debug",以显示运行/调试窗口,其中包含控制台选项卡。

3、查看日志输出:在控制台窗口的选项卡中,您将看到应用程序的日志输出,您可以滚动查看日志消息,以及根据需要过滤和搜索特定的日志消息。文章来源地址https://www.toymoban.com/news/detail-521684.html

到了这里,关于Mybatis日志Log4j与Logback的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • logback/log4j基本配置和标签详解

    什么是logback logback 继承自 log4j,它建立在有十年工业经验的日志系统之上。它比其它所有的日志系统更快并且更小,包含了许多独特并且有用的特性。 logback.xml 首先直接上配置,我在项目过程中发现一些同时遇到需要logback文件的时候就去其他项目copy一个,改吧改吧名字就直

    2024年02月09日
    浏览(59)
  • Springboot使用自带Logback 与 整合log4j 和 log4j2过程详解

    1、添加依赖 2、logback-spring.xml配置 3、使用   本地日志: 1、添加依赖 2、log4j.properties文件配置  3、配置文件中设置日志 application.yml: 4、使用: 1、添加依赖 2、log4j2.xml配置 3、配置文件中设置日志 application.yml 4、使用: 注意:如果pom.xml中添加有 spring-boot-starter-test 依赖 必

    2024年01月19日
    浏览(50)
  • Java中的Log4j是什么?如何使用Log4j进行日志管理

    Log4j是一个Java日志管理工具,它可以帮助开发者在应用程序中记录日志。它是由Apache软件基金会开发和维护的,已经成为Java开发中最流行的日志管理框架之一。 Log4j可以通过多种方式记录日志,包括控制台输出、文件输出、数据库存储等。此外,Log4j还提供了多种日志级别,

    2024年02月04日
    浏览(56)
  • 【日志加载 log4j】

    2.编写配置 3.获取日志对象 4.1 Loggers 记录器 4.2 Appenders 输出源 4.3 Layouts 布局 5. 配置文件 log4j.properties

    2024年02月11日
    浏览(90)
  • 【问题】SpringBoot项目中log4j与logback的Jar包冲突问题

    这篇文章主要给大家介绍了解决SpringBoot项目中log4j与logback的Jar包冲突问题,文中有详细的解决方法和冲突的原因。 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/C:/Users/lx/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class

    2024年01月22日
    浏览(90)
  • 用Log4j 2记录日志

    下面代码示例的maven工程中的pom.xml文件中需要增加对Log4j 2的依赖: 配置说明参考文档 https://logging.apache.org/log4j/2.x/manual/configuration.html 配置文件中pattern的详细说明 例如,下面配置文件片段中用到了pattern: pattern的详细说明请参考: https://logging.apache.org/log4j/2.x/manual/layouts.ht

    2024年02月14日
    浏览(97)
  • log4j日志框架的使用

    log4j的配置文件可以理解成有2部分 1根日志记录器  2 各appender(输出源)配置 入口 loggerManager的静态代码块 在loggerManager的静态代码块中,完成对配置文件的读取和解析 然后组装成框架的Logger对象、appender对象完成初始化操作 当调用logger.info打印日志时,和logback的流程基本一样

    2024年02月04日
    浏览(60)
  • Log4j疯狂写日志问题排查

    最近有个 Java 系统上线后不久就收到了磁盘使用率告警,磁盘使用率已经超过了 90% 以上,并且磁盘使用率还在不停增长。 由于服务器磁盘被打满,导致了系统正常的业务日志无法继续打印,严重影响了系统的可靠性。 刚开始收到磁盘告警的时候,怀疑是日志级别问题,业务

    2024年02月13日
    浏览(68)
  • java slf4j,Commons Logging与log4j,Logback,tinylog和异常配合使用

    1、日志是什么?         日志是每天记录我们程序情况的。日志管理的目的是为了记录日志。 2、为什么会有日志?         1、问题追溯,通过日志文件的记录可以使我们运维或者程序员快速查找问题根源。         2、状态检测,检测我们系统状况,为项目出现的问题做

    2024年02月16日
    浏览(59)
  • 使用Log4j与log4j2配置mybatisplus打印sql日志

    环境:项目非完全spring项目,没有spring的配置文件。执行sql时老是不打印sql语句。因此进行修改,过程比较坎坷,记录一下。 我尝试使用log4j和log4j2进行配置 最终把这两种全部配置记录上 Log4j配置 如果项目用的是log4j需要进行配置打印sql的步骤 首先引入log4j的包 配置一下l

    2024年02月04日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包