在我们的web应用程序中,我们使用spring、hibernate和sql server 2016作为db。我们正在使用jndi连接到数据库。为了记录hibernate执行的所有查询,我尝试实现p6spy。
以下是我所做的改变。
更改资源信息
<Resource name="jdbc/eportalcore" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;databaseName=eportal-core;"
username="eportaldbadmin"
password="P@ssw0rd"
maxTotal="100"
maxIdle="20"
minIdle="5"
maxWaitMillis="10000" />至
<Resource name="jdbc/eportalcore" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.p6spy.engine.spy.P6SpyDriver"
url="jdbc:p6spy:sqlserver://localhost:1433/eportal-core"
username="eportaldbadmin"
password="P@ssw0rd"
maxTotal="100"
maxIdle="20"
minIdle="5"
maxWaitMillis="10000" />并在tomcat目录的lib文件夹下添加了spy.properties文件。此外,我也将p6spy-3.0.0.jar放在lib文件夹中。
但在此之后,我的应用程序将无法连接到DB。我在这里做什么错事?如果我删除了这个更改,那么它就正常工作了。
有什么建议吗?
发布于 2018-05-07 17:18:59
我有同样的问题,这是我做了什么,使它发挥作用。注意,我的数据库连接属性位于属性文件中(不应该成为问题),并且我使用tomcat作为应用服务器。您还可以在项目中添加P6Spy作为Maven依赖项。
先于:db.properties
db.driver=net.sourceforge.jtds.jdbc.Driver
db.url=jdbc:jtds:sqlserver://${db.server}/${db.name};useNTLMv2=true;domain=XX后:下载(撰写此响应时的最新版本)项目。将p6间谍-3.7.0.jar和spy.properties放在tomcat/lib文件夹中。更改spy.properties和应用程序属性,如下所示。重新启动应用程序,您应该找到一个正常打印日志的spy.log。
db.properties
db.driver=com.p6spy.engine.spy.P6SpyDriver
db.url=jdbc:p6spy:jtds:sqlserver://${db.server}/${db.name};useNTLMv2=true;domain=XXspy.properties
driverlist=net.sourceforge.jtds.jdbc.Driverhttps://stackoverflow.com/questions/45719215
复制相似问题