Hibernate----搭建log4j日志环境
来源:互联网 发布:哥白尼式革命 知乎 编辑:程序博客网 时间:2024/05/14 13:52
讲了Hibernate开发环境的搭建以及实现一个Hibernate的基础示例,但是你会发现运行输出只有sql语句,很多输出信息都看不见。这是因为用到的是slf4j-nop-1.6.1.jar的实现,这是slf4j自己的实现,但用的并不多,但是我们可以使用slf4j的接口对上log4j的实现,当然也可以对上其它的log实现。那么,我就在昨天Hello_World上搭建一个log4j的日志环境。
一、SLF4J简介
SLJ4F(Simple Logging Facade for Java)简单日志门面,为各种loging APIs提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的loging APIs实现。
SLF4J 不依赖任何特殊的class loader机制,实际上,SLF4J 和已有日志实现的绑定是在编译时静态执行的,具体绑定工作是通过一个jar包实现的,使用时只要把相应的jar包(只有一个)放到类路径上即可
二、log4j搭建环境所需文件
1、log4j-1.2.17:http://pan.baidu.com/s/1c0hDZG0
其余资源下载请参见前一篇博客:Hibernate学习之——Hibernate环境搭建
三、SLF4J的实现原理
SLF4J支持多个日志系统,比如NOP, Simple, log4j, JDK 1.4 logging, JCL and logback。那么,SLF4J它的实现原理是什么呢?SLF4J它只提供一个核心slf4j api(就是slf4j-api.jar包),这个包只有日志的接口,并没有实现,所以如果要使用就得再给它提供一个实现了些接口的日志包,比 如:log4j,common logging,jdk log日志实现包等,但是这些日志实现又不能通过接口直接调用,实现上他们根本就和slf4j-api不一致,因此slf4j又增加了一层来转换各日志实现包的使 用,当然slf4j-simple、slf4j-nop除外。其结构如下:
实现原理:
四、slf4j+log4j组合使用模式
1. slf4j-api-1.6.1.jar
2. slf4j-log4j12-1.6.1.jar
3. log4j-1.2.17.jar
4. log4j.properties(自己在Hibernate的文件夹里搜索即可获得,对于不需要的输出只需用#注释掉即可)
此处组合模式中jar的版本号须要对应。对于配置完成的项目,里面需要有这三个日志文件jar包
log4j.properites配置信息:
1 ### direct log messages to stdout ### 2 log4j.appender.stdout=org.apache.log4j.ConsoleAppender 3 log4j.appender.stdout.Target=System.out 4 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 5 log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 6 7 ### direct messages to file hibernate.log ### 8 #log4j.appender.file=org.apache.log4j.FileAppender 9 #log4j.appender.file.File=hibernate.log10 #log4j.appender.file.layout=org.apache.log4j.PatternLayout11 #log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n12 13 ### set log levels - for more verbose logging change 'info' to 'debug' ###14 15 log4j.rootLogger=warn, stdout16 17 #log4j.logger.org.hibernate=info18 log4j.logger.org.hibernate=debug19 20 ### log HQL query parser activity21 #log4j.logger.org.hibernate.hql.ast.AST=debug22 23 ### log just the SQL24 #log4j.logger.org.hibernate.SQL=debug25 26 ### log JDBC bind parameters ###27 log4j.logger.org.hibernate.type=info28 #log4j.logger.org.hibernate.type=debug29 30 ### log schema export/update ###31 log4j.logger.org.hibernate.tool.hbm2ddl=debug32 33 ### log HQL parse trees34 #log4j.logger.org.hibernate.hql=debug35 36 ### log cache activity ###37 #log4j.logger.org.hibernate.cache=debug38 39 ### log transaction activity40 #log4j.logger.org.hibernate.transaction=debug41 42 ### log JDBC resource acquisition43 #log4j.logger.org.hibernate.jdbc=debug44 45 ### enable the following line if you want to track down connection ###46 ### leakages when using DriverManagerConnectionProvider ###47 #log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace
这样一个log4j的日志环境已经搭建完成了,如果有不明白的地方,可以下载源码参考学习。
- hibernate搭建Log4j日志环境
- hibernate 搭建log4j日志环境
- Hibernate----搭建log4j日志环境
- hibernate中用log4j搭建日志环境
- Hibernate学习-------------Log4j日志环境的搭建
- 搭建 log4j 日志环境
- Log4j 日志环境搭建
- Hibernate搭建日志环境(log4j)及打印DDL语句
- eclipse搭建Log4J日志环境
- 【Hibernate框架开发之三】搭建Hibernate日志(slf4j转log4j)环境并搭建Junit单元测试环境!
- hibernate搭建日志环境,报错java.lang.NoClassDefFoundError: org/apache/log4j/Level
- hibernate 搭建junit日志环境
- Hibernate4.2.2搭建Log4J日志环境
- Hibernate4.2.2搭建Log4J日志环境
- Hibernate4.3.1搭建Log4J日志环境
- Hibernate4.2.2搭建Log4J日志环境
- Hibernate4.3.11 如何搭建Log4j日志环境
- Hibernate4.3.1搭建Log4J日志环境
- MTK 如何去掉隐藏系统APK
- 方法选不对,时间全浪费。使用NSDataDetector提高你的编码效率
- Sublime Text3显示中文
- 机器学习日记2017.1.9
- DEDECMS之文章内容页读者自由设置字号大小
- Hibernate----搭建log4j日志环境
- 类的继承与派生中关于构造函数
- python lambda 表达式使用
- 二叉树结构字符串转为数组控制台输出二叉树
- init子进程
- DEDECMS之唯一登录,踢人效果
- ListView自带单选和多选的特技Choice Mode
- ionic添加cordova-plugin-camera拍照插件后build报错
- Android事件分发机制完全解析,带你从源码的角度彻底理解(上)