Question

J'ai le code suivant et je ne parviens toujours pas à faire écrire à Hibernate des requêtes SQL dans un fichier journal. Il les écrit parfaitement sur la console Eclipse.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >
<log4j:configuration>
<appender name="file" 
 class="org.apache.log4j.RollingFileAppender">
 <param name="maxFileSize" value="500KB"/>
 <param name="maxBackupIndex" value="5"/>
 <param name="File" value="hibernate.log"/>
 <layout class="org.apache.log4j.PatternLayout">
  <param name="ConversionPattern"
    value="%d{ABSOLUTE} %5p %c{1}:%L - %m%n" />
 </layout>
</appender>

<logger name="org.hibernate.SQL">
    <level value="info"/>
    <appender-ref ref="file"/>
</logger>


<root>
<priority value="info"></priority>
<!--  -->
</root>


</log4j:configuration>

Quelqu'un peut-il expliquer pourquoi? J'ai le sentiment que cet élément doit faire quelque chose avec cela, mais je ne vois pas du tout ce que cet élément fait? Quelqu'un peut-il poster un lien ou quelque chose où je peux lire ceci.

Était-ce utile?

La solution

org.hibernate.SQL enregistre uniquement le code SQL au niveau débogage. Vous avez besoin de quelque chose comme ceci:

<logger name="org.hibernate.SQL">
  <level value="debug" />
  <appender-ref ref="file" />
</logger>

Autres conseils

Configurez log4j comme suit:

<logger name="org.hibernate">
    <level value="debug"/>
    <appender-ref ref="file"/>
</logger>

vous devez ensuite configurer " hibernate.show_sql " propriété hibernate à true

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top