1.在maven引入:

<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency> <dependency>
<groupId>com.googlecode.log4jdbc</groupId>
<artifactId>log4jdbc</artifactId>
<version>1.2</version>
</dependency> <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.24</version>
</dependency>

2.log4j.properties配置如下:

#记录系统执行过的sql语句
log4j.logger.jdbc.sqlonly=DEBUG,console
#记录sql执行的时间,可以分析耗时的sql语句
log4j.additivity.jdbc.sqltiming=true
log4j.logger.jdbc.sqltiming=INFO,console
#记录除了ResultSet外的所有JDBC调用情况。一般不需要。
#log4j.additivity.jdbc.audidt=true
#log4j.logger.jdbc.audit=INFO,console
#记录返回结果集信息
#log4j.additivity.jdbc.resultset=true
#log4j.logger.jdbc.resultset=INFO,console
#记录数据库连接和释放信息,可记录当前的数据库连接数,便于诊断连接是否释放
#log4j.additivity.jdbc.connection=true
#log4j.logger.jdbc.connection=INFO,console

#控制台输出
log4j.appender.console=org.apache.log4j.ConsoleAppender
#控制台输出格式定义
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %m%n%n

3.修改数据库连接配置如下:

#数据库驱动
mysql.driver=net.sf.log4jdbc.DriverSpy
#数据库连接URL
mysql.url=jdbc:log4jdbc:mysql://localhost/test

结果如下:

[QC] INFO [http-apr-8070-exec-7] net.sf.log4jdbc.Slf4jSpyLogDelegator.sqlTimingOccured(370) | select bookent0_.n_id as n_id1_0_, bookent0_.d_create_time as d_create2_0_, bookent0_.s_created_by
as s_create3_0_, bookent0_.d_update_time as d_update4_0_, bookent0_.s_updated_by as s_update5_0_,
bookent0_.n_chapternum as n_chapte6_0_, bookent0_.s_name as s_name7_0_, bookent0_.s_profile
as s_profil8_0_, bookent0_.s_remark as s_remark9_0_, bookent0_.n_size as n_size10_0_, bookent0_.n_sort
as n_sort11_0_, bookent0_.n_type as n_type12_0_, bookent0_.s_url as s_url13_0_ from jy_book
bookent0_ where 1=1 and bookent0_.n_type=1 order by bookent0_.n_sort desc
{executed in 9 msec}

[hibernate]log4jdbc日志输出完整SQL语句的更多相关文章

  1. 在hibernate框架中配置显示sql语句

    使用Hibernate的框架开发时,可在Hibernate.cfg.xml中加上 <property name="hibernate.show_sql">true< ...

  2. 一对一关联查询时使用relation连贯操作查询后,调用getLastSql()方法输出的sql语句

    如题: 一对一关联查询时使用relation连贯操作查询后,调用getLastSql()方法输出的sql语句不是一条关联查询语句. 例如: $list = $db->relation(true) ...

  3. Hibernate 三种状态变化 与 sql 语句的关系

    前言:在Hibernate中有三种状态,对它的深入理解,才能更好的理解hibernate的运行机理,刚开始不太注意这些概念,后来发现它是重要的.对于理解hibernate,JVM和sql的关系有更好的 ...

  4. ui自动化测试数据复原遇到的坑——1、hibernate输出完整sql

    公司老项目使用SSH+informix+weblogic+IE开发,我们要做ui自动化测试,其中的测试数据复原,我打算通过hibernate输出sql,然后把插入.更新的sql改为delete或upd ...

  5. MyBatis笔记之配置输出日志并打印输出SQL语句

    1. 引入Log4J的Maven依赖: <dependency> <groupId>log4j</groupId> <artifactId>log4j& ...

  6. 曹工杂谈--使用mybatis的同学,进来看看怎么在日志打印完整sql吧,在数据库可执行那种

    前言 今天新年第一天,给大家拜个年,祝大家新的一年里,技术突突突,头发长长长! 咱们搞技术的,比较直接,那就开始吧.我给大家看看我demo工程的效果(代码下边会给大家的): 技术栈是mybatis/m ...

  7. laravel 打印完整sql语句

    laravel5 用DB自带的getQueryLog方法直接打印: DB::connection()->enableQueryLog(); // 开启QueryLog \App\User::fi ...

  8. MyBatis拦截器打印不带问号的完整sql语句方法

    /* Preparing: SELECT * FROM tb_user WHERE id = ? AND user_name = ?  目标是打印:SELECT * FROM tb_user WHER ...

  9. ssm整合后打印日志查看执行sql语句

    mybatis.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configura ...

随机推荐

  1. 爬虫保存Cookie

    import http.cookiejar as cookielib session.cookie = cookielib.LWPCookieJar() session.cookie.save(fil ...

  2. 【2018-01-26】SqlServer 检查死锁和阻塞

    利用sys.sysprocesses SQL进程检查是否出现死锁和阻塞 Sys.SysProcesses 系统表是一个很重要的系统视图,主要用来定位与解决Sql Server的阻塞和死锁 select ...

  3. jade总结

    随着时间的迁移,要跟官方api相匹配   jade的缺点 1.可移植性差 2.调试困难 3.性能不是非常出色(不是为性能设计,可以使用dot, http://olado.github.io/) 选择的 ...

  4. PHP获取不到url传递参数中#&等特殊字符解决方法

    有些符号在URL中是不能直接传递的,无法传入PHP处理,比如#&等符号,通过$_GET是获取不到的,比如一个域名https://localhost/url.php?url=yangyufei+ ...

  5. js获取文件后缀名

    function extname(filename){ if(!filename||typeof filename!='string'){ return false }; let a = filena ...

  6. 码云 VS首次提交代码报错:failed to push some refs to 'https://gitee.com/Liu_Cabbage/ASP.NET-MVC-QQ-Connect.git'

    打开命令提示符: 执行合并命令: git pull --rebase origin master 最后总结: 1.多为第一次提交代码,本地和码云仓库不一致,README.md文件不在本地代码目录中 2 ...

  7. DevExpress WPF v19.2图表图形控件功能增强?速速种草

    通过DevExpress WPF Controls,你能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案. 无论是Office办公软件的衍 ...

  8. Python中的猴子补丁

    monkey patch指的是在运行时动态替换,一般是在startup的时候.用过gevent就会知道,会在最开头的地方gevent.monkey.patch_all();把标准库中的thread/s ...

  9. 洛谷1546 最短网络Agri-Net【最小生成树】【prim】

    [内含最小生成树Prim模板] 题目:https://www.luogu.org/problemnew/show/P1546 题意:给定一个邻接矩阵.求最小生成树. 思路:点少边多用Prim. Pri ...

  10. dblclick([[data],fn]) 当双击元素时,会发生 dblclick 事件。

    dblclick([[data],fn]) 概述 当双击元素时,会发生 dblclick 事件.大理石量具哪家好 当鼠标指针停留在元素上方,然后按下并松开鼠标左键时,就会发生一次 click.在很短的 ...