Je configure mon application Java EE 6 en prenant comme point de départ le log4j quickstart de Jboss 7.1.JBoss 7 + Hibernate + Log4j
Mes principaux ajouts pom.xml sont:
<dependencyManagement>
<dependencies>
<!-- Define Log4j dependency and its version -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
...
</dependencies>
</dependencyManagement>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<scope>provided</scope>
</dependency>
version est 1.2.16.
Maintenant, je peux faire:
private static final enregistreur Logger = Logger.getLogger (MacchinarioController.class);
et d'utiliser le journal comme prévu. Bien!
Je n'ai aucun fichier log4j.xml ni .properties.
Maintenant, je veux que Hibernate imprime dans la console toutes les instructions SQL en cours d'exécution, y compris les valeurs de paramètres.
J'ai créé ce log4j.xml et le mettre dans src/main dossier source/ressources:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration>
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="info"/>
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} [%t] %-5p %c{1} - %m%n"/>
</layout>
</appender>
<appender name="rolling-file" class="org.apache.log4j.RollingFileAppender">
<param name="file" value="Program-Name.log"/>
<param name="MaxFileSize" value="1000KB"/>
<param name="MaxBackupIndex" value="4"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %l - %m%n"/>
</layout>
</appender>
<logger name="org.hibernate">
<level value="ALL" />
</logger>
<root>
<priority value ="debug" />
<appender-ref ref="console" />
<appender-ref ref="rolling-file" />
</root>
</log4j:configuration>
Mais rien ne montre, où je fais mal?