相关疑难解决方法(0)

Hibernate显示真正的SQL

如果我订

<property name="show_sql">true</property>
Run Code Online (Sandbox Code Playgroud)

在我的控制台的hibernate.cfg.xml配置文件中,我可以看到SQL.

但它不是真正的 SQL ......我能看到将直接传递给数据库的SQL代码吗?

例:

我知道了

select this_.code from true.employee this_ where this_.code=?
Run Code Online (Sandbox Code Playgroud)

我可以看吗

select employee.code from employee where employee.code=12
Run Code Online (Sandbox Code Playgroud)

真正的 SQL?

java sql orm hibernate

384
推荐指数
4
解决办法
47万
查看次数

使用Hibernate时如何使用参数值打印查询字符串

在Hibernate中是否可以使用实际值而不是问号来打印生成的SQL查询?

如果使用Hibernate API无法打印具有实际值的查询,您会建议如何?

java sql orm hibernate

370
推荐指数
11
解决办法
32万
查看次数

关闭hibernate日志记录到控制台

运行我的Spring/Hibernate应用程序时,我在控制台上看到以下不需要的输出:

Hibernate: select securityus0_.ID ....
Hibernate: select securityus0_.ID ....
Hibernate: select securityus0_.ID ....
Hibernate: select securityus0_.ID ....
Run Code Online (Sandbox Code Playgroud)

我已经配置了我的Log4j记录器,如下所示:

   <logger name="org.hibernate">
     <level value="FATAL"/>
   </logger>

   <category name="STDOUT">
      <priority value="WARN"/>
   </category>
   <category name="STDERR">
      <priority value="WARN"/>
   </category>   

   <!-- for all other loggers log only info and above log messages -->
   <root>
      <priority value="WARN"/> 
      <appender-ref ref="STDOUT" /> 
   </root>
Run Code Online (Sandbox Code Playgroud)

我如何沉默这些消息?

java spring hibernate log4j

16
推荐指数
3
解决办法
1万
查看次数

初始化时Log4j警告?

我正在尝试了解log4j所以我只是尝试做一些非常简单的事情;

Logger logger = Logger.getLogger("ClientApplicationLog");
logger.info("Logger Test");
Run Code Online (Sandbox Code Playgroud)

但是在我得到这个之后;

log4j:WARN No appenders could be found for logger (ClientApplicationLog).
log4j:WARN Please initialize the log4j system properly.
Run Code Online (Sandbox Code Playgroud)

你知道我哪里错了吗?

谢谢你们

java warnings log4j

14
推荐指数
1
解决办法
5万
查看次数

强制Jboss记录使用SLF4J

我正在使用Hibernate 4.0和Coldfusion 8与Jrun,遗憾的是已经包含了log4j,我无法将其删除,并且log4j的版本太旧(没有跟踪).因此Hibernate无法正常工作.我想强制Jboss Logging使用SLF4j,我已经为自定义log4j添加了绑定.

coldfusion logging jboss log4j slf4j

14
推荐指数
1
解决办法
6458
查看次数

如何在Hibernate日志中显示SQL参数?

在我的hibernate.cfg.xml中,我有以下内容:

<property name="show_sql">true</property>
Run Code Online (Sandbox Code Playgroud)

在我的log4j.xml中,我有以下内容:

<logger name="org.hibernate" additivity="false">
    <level value="TRACE"/>
    <appender-ref ref="hbn_log"/>
</logger>

<category name="org.hibernate.SQL" additivity="false">
    <priority value="TRACE"/>
    <appender-ref ref="hbn_log"/>
</category>

<category name="org.hibernate.type" additivity="false">
    <priority value="TRACE"/>
    <appender-ref ref="hbn_log"/>
</category>

<logger name="org.hibernate.type.descriptor.sql.BasicBinder"> 
    <level value="TRACE"/>
    <appender-ref ref="hbn_log"/>
</logger>

<logger name="org.hibernate.event.def.DefaultLoadEventListener" additivity="true">
    <level value="all"/>
    <appender-ref ref="hbn_log"/>
</logger>

<logger name="org.hibernate.cache.ReadWriteCache" additivity="true">
   <level value="all"/>
   <appender-ref ref="hbn_log"/>
</logger>

<appender name="hbn_log" class="com.adventnet.management.log.NMSRollingFileAppender">
   <param name="File" value="logs/hbn.txt"/>
       <param name="MaxFileSize" value="1MB"/>
       <param name="MaxBackupIndex" value="10"/>
   <layout class="org.apache.log4j.PatternLayout">
                 <param name="ConversionPattern" value="[%d{dd MMM yyyy HH:mm:ss:SSS}] %-5c{2}: %m%n"/>
   </layout>
   <param name="Threshold" value="TRACE"/>
</appender>
Run Code Online (Sandbox Code Playgroud)

在我的stdout.txt中,我可以看到它记录了SQL语句:

[13 …
Run Code Online (Sandbox Code Playgroud)

sql parameters logging hibernate

8
推荐指数
1
解决办法
3万
查看次数

如何将 Hibernate 从 jboss-logging 切换到 logback?

我发现,我的休眠依赖jboss-logging反过来导致依赖。

是否可以切换到logback我已经在使用的日志记录?

更新

我尝试了三个地方设置org.jboss.logging.provider

1) 在 Spring 中对 JPA 属性进行 Lasing:

.setJpaProperties(additionalProperties());
Run Code Online (Sandbox Code Playgroud)

2)设置属性main()

System.setProperty("org.jboss.logging.provider", "slf4j");
Run Code Online (Sandbox Code Playgroud)

3)在命令行中设置属性:

-Dorg.jboss.logging.provider="slf4j"
Run Code Online (Sandbox Code Playgroud)

都没有工作。

我得到一个例外:

Caused by: java.lang.ClassNotFoundException: org.jboss.logging.Logger
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 32 more
Run Code Online (Sandbox Code Playgroud)

请注意,我已从依赖项中排除了 jboss 日志记录:

 <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>4.3.7.Final</version>
        <exclusions>
            <exclusion>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging-annotations</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

java hibernate logback jboss-logging

5
推荐指数
1
解决办法
4956
查看次数

java.lang.NullPointerException upon EntityManager injection in Spring repository

I am new to Spring MVC. I've been searching for few days for a solution to my problem, without any success.

Here is my stack:

  • jBoss 4.2.3GA server
    • I know it's a very old version, but that is what I am limited to right now. jBoss 7.1 will be approved for use in my organization within the next few months, but I would like to make my R&D application work in the 4.2.3GA server. That means I have added all …

jboss spring hibernate ejb entitymanager

3
推荐指数
2
解决办法
9303
查看次数