I use hibernate, spring mvc, and eclipse. In my eclipse console, the hibernate sql displays in the form of:
Hibernate: insert into some_table (fieldname1, fieldname2, fieldname3, fieldname4)
values (?, ?, ?, ?)
How can I get the console to print out the values that are being inserted in the place of the question marks? I am committed to using slf4j and logback for the logging in my app.
Here is my logback.xml:
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<!-- To enable JMX Management -->
<jmxConfigurator/>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level %logger{0} - %msg%n</pattern>
</encoder>
</appender>
<!--<logger name="org.hibernate" level="debug"/> -->
<logger name="mypackagename.myappname" level="debug"/>
<logger name="org.hibernate.SQL" additivity="false" level="DEBUG" />
<logger name="org.hibernate.type" additivity="false" level="TRACE" />
<root level="info">
<appender-ref ref="console"/>
</root>
</configuration>
The correct working answer turned out to be:
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<!-- To enable JMX Management -->
<jmxConfigurator/>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level %logger{0} - %msg%n</pattern>
</encoder>
</appender>
<logger name="mypackagename.myappname" level="TRACE"/>
<logger name="org.hibernate.SQL" level="DEBUG" />
<logger name="org.hibernate.type" level="TRACE" />
<root level="info">
<appender-ref ref="console"/>
</root>
</configuration>