设为首页 加入收藏

TOP

在Hibernate中开启日志
2015-07-26 13:14:09 来源: 作者: 【 】 浏览:59
Tags:Hibernate 开启 日志

在项目中,如果要排查故障,找出Bug,离不开日志信息。那么在Hibernate项目中如何开启日志输出呢?本文讲述如何在Hibernate中开启日志,以及Hibernate的日志级别。

一、项目开发环境
具体以一个示例项目为例,我们的项目使用了:
1. Maven 3.2.3
http://maven.apache.org/
2. Hibernate 5.0.0.CR1 RELEASE
http://hibernate.org/orm/
3. Eclipse IDE,版本为Luna 4.4.1
http://www.eclipse.org/

二、依赖关系
示例项目使用了以下的开源库,包括:
1. hibernate-core
ORM持久化的核心库
2. mysql-connector-java
MySQL的JDBC驱动包
3. slf4j-api
供Hibernate使用的简单日志Facade
4. slf4j-log4j12
Hibernate使用的日志输出库
5. javassist
Hibernate使用的Java字节码操作库

Hibernate依赖于抽象日志框架SLF4J,使用SLF4J后,可以选择多种日志输出框架。如果项目未绑定任何日志输出框架,那么它是没有任何输出的。故本示例项目绑定了Log4j作为日志输出框架。

三、配置Log4j
在项目的类路径下,创建log4j.properties文件,内容如下:


上面的log4j.properties配置文件中,我们指定所有的Hibernate的具体信息输出类别为hibernate.log。它用于org.hibernate包。如果只想输出部分Hibernate类别的信息,那么需要对指定类别进行配置。

Hibernate主要的类别如下:
1)org.hibernate.SQL
日志输出所有Hibernate执行的SQL DML语句
2)org.hibernate.type
日志输出所有的JDBC参数
3)org.hibernate.transaction
日志输出所有活动相关的事务
4)org.hibernate.jdbc
日志输出所有的JDBC资源采集
5)org.hibernate.tool.hbm2ddl
日志输出所有Hibernate执行的SQL DDL语句
6)org.hibernate
日志输出所有的Hibernate信息

如果指定日志输出类别为org.hibernate.SQL,那么将会输出SQL语句。但是,还有一种更简单的查看SQL语句的方法,只需简单地设置show_sql参数为true。

四、Hibernate日志示例

1、创建实体Bean:Order



2、创建ORM映射文件:orders.hbm.xml



3、操作数据库的示例代码:HibernateLoggingExample.java



4、日志输出


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Java NIO中的Glob模式详解 下一篇Java并行框架学习之ForkJoin

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: