日志配置
有日志然后可以打印一切(包括sql,异常,普通信息) logback取代log4j的理由
logback可以在里面切换log4j,slf4j内含log4j(默认就是这个),集成了slf4j之后就用slf4j(根据你加入的jar包自动识别切换)
logback日志配置:
1,下载jar
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.10</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.2</version>
</dependency>
2,web.xml配置
<context-param>
<param-name>logbackConfigLocation</param-name>
<param-value>classpath:config_log/logback.xml</param-value>
</context-param>
<listener>
<listener-class>ch.qos.logback.ext.spring.web.LogbackConfigListener</listener-class>
</listener>
3,logback.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true" scan="true">
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!-- <pattern>%.-1level|%-40.40logger{0}|%msg%n</pattern> -->
<!--<pattern>%d{yyyy/MM/dd-HH:mm:ss} %-5level [%thread] %class{5}:%line>>%msg%n</pattern> -->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${catalina.base}/logs/esteelds/esteelLogFile_%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>100</maxIndex>
<maxHistory>30</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>5MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<!--日志文件最大的大小-->
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>
</encoder>
</appender>
<logger name="org.logicalcobwebs" level="ERROR" />
<logger name="com.esteel" level="INFO" />
<logger name="org.springframework.web" level="INFO" />
<logger name="org.springframework.jdbc" level="INFO" />
<logger name="org.mybatis" level="INFO" />
<logger name="org.springframework.beans" level="INFO" />
<logger name="com.esteel.mybatis" level="INFO" />
<!-- <logger name="org.apache.ibatis" level="DEBUG">///////////////////////mysql打印日志
<appender-ref ref="STDOUT"/>
</logger>
<logger name="java.sql" level="debug">
<appender-ref ref="STDOUT"/>
</logger> -->
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>
4,应用:
(1)打印sql
logback.xml加:
<logger name="org.apache.ibatis" level="DEBUG">///////////////////////mysql打印日志
<appender-ref ref="STDOUT"/>
</logger>
<logger name="java.sql" level="debug">
<appender-ref ref="STDOUT"/>
</logger>
mybatis-config.xml加
<setting name="logImpl" value="STDOUT_LOGGING"/>///其实这个即可
(2)在Java中硬编码打印
package com.stu.system.action;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class BlogAction{
//定义一个全局的记录器,通过LoggerFactory获取
private final static Logger logger = LoggerFactory.getLogger(BlogAction.class);
/**
* @param args
*/
public static void main(String[] args) {
logger.info("logback 成功了");
logger.error("logback 成功了");
}
}
参考:
http://blog.csdn.net/conquer0715/article/details/9365899
http://www.jb51.net/article/71692.htm
http://www.myexception.cn/sql/1735534.html
http://superich2008.iteye.com/blog/2063349
相关推荐
SLF4J(Simple Logging Facade for Java)是Java中的一种日志门面(Logging Facade),它为各种日志框架提供了一个简单的统一接口,如Log4j、Java Util Logging (JUL)、Logback等。这个接口允许最终用户在部署时插入...
"logback-slf4j日志配置文件下载即可使用" logback-slf4j是Java领域中一种常用的日志记录解决方案,它通过结合slf4j(Simple Logging Facade for Java)来提供了异步日志输出的功能,能够将日志输出到不同的文件中...
在给定的标题和描述中,我们看到了两个关键的日志框架——`log4j`和`SLF4J(Simple Logging Facade for Java)`,以及它们之间的桥接器`slf4j-log4j12`。这些组件是Java日志处理的常用工具,让我们详细了解一下它们...
SLF4J(Simple Logging Facade for Java)是Java中的一种日志抽象层,它提供了一个API,允许开发者在运行时插入所...为了充分利用SLF4J,开发者应该熟悉其API、日志级别的含义以及如何配置绑定包以满足特定的日志需求。
SLF4J(Simple Logging Facade for Java)是Java中的一种日志门面(Logging Facade),它为各种日志框架提供了一个简单的统一接口,如Log4j、Java Util Logging、Logback等。这个jar包是SLF4J的核心组件,用于在应用...
今天,我们将讨论如何将 Log4j2 结合 Slf4j 配置使用,以便更好地记录和管理日志。 首先,我们需要下载 Log4j2 和 Slf4j 的 jar 文件。Log4j2 的下载地址是 http://logging.apache.org/log4j/2.x/download.html,...
5. **NoBinding**: 如果没有找到合适的日志实现,SLF4J会使用一个名为NoBinding的日志绑定,它会在控制台输出警告信息,提醒用户未正确配置日志实现。 SLF4J源码中值得关注的部分包括: 1. **Logger接口**: 定义了...
5. 日志配置:每个日志框架都有自己的配置文件,如Log4j的log4j.properties或log4j.xml,需要正确设置这些配置以控制日志的输出格式、文件路径、级别限制等。 总之,Slf4j作为日志的门面,为开发者提供了灵活、便捷...
2. 配置SLF4J实现的配置文件,如logback.xml或log4j.properties,以定义日志级别、输出格式和目标(控制台、文件等)。 3. 如果使用的是IDE,确保IDE已经配置好SLF4J和对应的实现,以便在开发过程中能够看到日志输出...
此外,Log4j还支持自定义布局和输出格式,以及通过配置文件动态改变日志配置。 然而,随着Java社区的发展,SLF4J应运而生,它是一个日志抽象层,为不同的日志实现提供一个统一的接口。SLF4J的主要目的是解耦应用...
4. 配置SLF4J:在应用的配置文件中,比如`logback.xml`或`logging.properties`,指定我们的自定义日志处理器为SLF4J的日志实现。 在“mongodbdemo”这个项目中,可能包含了实现这一功能的示例代码。通过分析这些...
SLF4J(Simple Logging Facade for Java)是Java中的一种日志抽象层,它为各种日志框架,如Log4j、Logback等提供一个简单的接口,使得开发者能够在不改变代码的情况下更换日志实现。在非Web工程中,SLF4J同样扮演着...
SLF4J(Simple Logging Facade for Java)是Java中一个重要的日志抽象层,它为各种日志框架,如Log4j、java.util.logging、Logback等提供了一个统一的接口。通过SLF4J,开发者可以在不修改代码的情况下更换底层的...
在 Springboot 项目中,我们可以使用 Slf4j 提供的 API 来记录日志,然后使用 Logback 框架来配置日志记录的相关参数。通过配置 logback-spring.xml 文件,我们可以将日志输出到控制台或文件中。
Log4j和SLF4J(Simple Logging Facade for Java)是Java领域广泛使用的两个日志框架,它们有着各自的特点和用途。下面将详细阐述这两个框架以及它们在给定压缩包中的具体组件。 首先,Log4j是Apache软件基金会的一...
使用Slf4j集成Log4j2构建项目日志系统的完美解决方案 Slf4j是简单的日志外观(Facade)模式,它提供了统一的日志接口,使得用户可以选择不同的日志实现。Slf4j的出现使得日志系统的开发变得更加灵活和便捷。Log4j2...
总的来说,SLF4J API是日志记录的关键组件,它通过提供一个统一的接口来解耦应用代码和日志实现,从而简化了项目的配置和维护。在实际开发中,结合具体的日志库使用SLF4J可以提高代码的可移植性和适应性。
开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22开发工具 slf4j-api-1.7.22...
1. **可插拔性**:SLF4J允许你选择或更换不同的日志实现,只需要更改配置,而无需修改代码。 2. **简洁的API**:SLF4J提供了一个简单易用的API,减少了日志相关的代码冗余。 3. **灵活性**:通过不同的绑定,你可以...
SLF4J(Simple Logging Facade for Java)是Java中的一种日志门面,它提供了一个简单的接口,允许开发者在不修改代码的情况下切换不同的日志实现。SLF4J的出现是为了统一各种日志框架,如Log4j、java.util.logging、...