首页 > 数据库 >hibernate打印完整sql语句

hibernate打印完整sql语句

时间:2023-06-23 13:33:49浏览次数:51  
标签:语句 spy hibernate p6spy sql com properties


采用p6spy完整显示hibernate的SQL语句



    虽然在hibernate中有show_sql选项,但是显示出来的语句大多类似
    select * from xxx where value=?
    但是有时候我们需要得到完整的SQL语句,怎么办呢?使用P6SPY就可以完成这个任务

    p6spy是一个开源软件,它可以跟踪任何使用jdbc的应用产生的数据库操作。特别适合于监控ejb服务器产生的 sql statements。
    官方网址:http://www.p6spy.com/    目前p6spy 适用的应用服务器包括jboss, atg, orion, jonas, iplanet, weblogic, websphere, resin and tomcat.

下面我介绍一下p6spy在tomcat应用程序上安装的步骤:
(1)http://www.p6spy.com/download.html,下载zip包
(2)解压出p6spy.jar spy.properties两个文件
(3)将p6spy.jar 放入应用程序的WEB-INF/lib目录,将spy.properties放入WEB-INF/classes目录
(4)修改spy.properties

    realdriver  =com.mysql.jdbc.Driver  将这行前面的#去掉
    logfile     = c:/spy.log  修改一个你需要的日志文件名
    
(5)修改hibernate.xml,修改connection.driver_class的值为com.p6spy.engine.spy.P6SpyDriver
(6)重启tomcat
(7)这样在c:/下的spy.log记录了数据库的访问情况。

 


标签:语句,spy,hibernate,p6spy,sql,com,properties
From: https://blog.51cto.com/u_16161240/6537922

相关文章

  • mysql的IN查询优化
    mysql的IN里面的数量太大,比如大于1千时,查询的性能就会差很多。有以下的解决方法。解决方法一:拆分IN的数量IN数量超过1千,就拆成多条sql,每条sql的IN数量不超过1千。用OR或者UNION进行SQL改写。也可以使用Java写代码,把IN数量进行拆分,每条sql的IN数量不超过1千。多次执行。......
  • Mysql存储引擎
    原文链接:https://blog.csdn.net/lzb348110175/article/details/106555504本文目录:1.MySQL体系结构2.存储引擎介绍3.MySQL存储引擎特性4.MySQL有哪些存储引擎5.了解MySQL数据存储方式6.MySQL存储引擎介绍6.1CSV存储引擎6.1.1CSV介绍6.1.2使用CSV存储引擎......
  • mysql的数据类型以及mysql中的int11是什么意思
    今天抽时间来讲一下mysql里的知识点,之前有不少人问过我,mysql中的int(11),这个11到底是啥意思?是11位的意思吗?你是否也想过这个问题,是否也有这个疑问?ok,今天就展开来讲一下,用通俗易懂的大白话来给你彻底搞明白一、跟你扯点二进制的小东西要讲清楚这个问题,我先来给大家科普一点计算......
  • MySQL事务四大隔离级别分析
    什么是事务?事务,由一个有限的数据库操作序列构成,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。事务的四大特性原子性:事务作为一个整体被执行,包含在其中的对数据库的操作要么全部都执行,要么都不执行。一致性:指在事务开始之前和事务结束以后,数据不会被破坏,......
  • sql学习记录
     from>where>groupby>聚合>having>select>orderby>limit      ......
  • 在Linux环境下安装PostgreSQL
    在Linux环境下安装PostgreSQL由于实际的生产环境,PostgreSQL数据库都是部署在linux服务器上的,因此记录一下通过源码安装与命令行操作PG数据库的过程下载官方下载网址:https://www.postgresql.org/ftp/source/我这里下载的是PostgresSQL源码版本为:postgresql-13.3.tar.gz安装......
  • sqlserver查看哪个表被锁表了以及解锁方法
    方法一--查看sqlserver被锁的表:selectrequest_session_idspid,OBJECT_NAME(resource_associated_entity_id)tableNamefromsys.dm_tran_lockswhereresource_type='OBJECT'--解锁:@spid为锁表进程declare@spidintSet@spid=66declare@sqlvarchar(1000)set@sql='k......
  • 使用 python 插入 sql 字符串时将对象转换为元组插入占位符
    sql插入的值肯定是动态的,通过%s占位符插入变量:definsert_cover(data:pojos.Cover):sql="insertintocovers(temp,accel_x,accel_y,accel_z,cover_status,date,name,sno)values(%s,%s,%s,%s,%s,%s,%s,%s)"exeSql(sql,tuple(data))data是一个......
  • Mysql 事务
    1.事务基本特性ACID1.1原子性:     指的是一个事务中的操作要么全部成功,要么全部失败。1.2一致性     指的是数据库总是从一个一致性的状态转换到另外一个一致性的状态。比如A转账给B100块钱,假设中间sql执行过程中系统崩溃A也不会损失100块,因为事务没有提交,修......
  • postgresql获取基于当前时间计算的当月第一天,最后一天,下个月的第n天等功能
    问题现象:​今天在项目开发中遇到了一个需求,在编写某个功能时,需要使用到基于某个时间(如当前时间),去获取本月第一天或下个月的第一天的数据.问题分析:通过查询资料可以得知,要实现这个需求并不容易,在sql语句中就能很好的获取到,这里我使用的是postgresql数据库,其他数......