2014-12-08 4 views
0

У меня есть проект pf JPA. Мои журналы выглядит следующим образом:Как записывать параметры спящего режима

Hibernate: insert into TEST(DESCRIPTION, NAME, version, id) values (?, ?, ?, ?) 
[08/12/14 06:26:26:026 GET] TRACE sql.BasicBinder: binding parameter [1] as [VARCHAR] - [desc] 
[08/12/14 06:26:26:026 GET] TRACE sql.BasicBinder: binding parameter [2] as [VARCHAR] - [name] 
[08/12/14 06:26:26:026 GET] TRACE sql.BasicBinder: binding parameter [3] as [INTEGER] - [0] 
[08/12/14 06:26:26:026 GET] TRACE sql.BasicBinder: binding parameter [4] as [BIGINT] - [21] 

У меня есть след из org.hibernate.type в конфигурации log4j. Это хорошо, но есть ли способ написать этот тип вывода?

Hibernate: insert into TEST(DESCRIPTION, NAME, version, id) values (desc, name, 0, 21) 

Я искал, что в google я не могу найти этот тип решения. Этот вывод выглядит читаемым и легко читаемым файлом журнала. Почему у этого нет hibenrate?

Моя конфигурация такова:

<category name="org.hibernate.type"> 
    <priority value="trace" /> 
</category> 
+3

http://stackoverflow.com/a/19299769/1356423 –

ответ

1

Я сомневаюсь, что это может быть возможным из коробки из спящего режима. Вы можете явно проксировать соединение, оператор и подготовленные операторы, созданные вашим приложением (используя шаблон дизайна декоратора) и регистрировать переданные параметры.

+0

Можете ли вы привести мне пример, пожалуйста? – grep

+0

Попробуйте использовать прокси-сервер datasource (https://github.com/ttddyy/datasource-proxy). Мы использовали его и имели возможность значения параметров и т. Д. –

0

Использование SLF4J + LOG4J

<dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-log4j12</artifactId> 
      <version>1.6.1</version> <!-- Use the latest version instead --> 
    </dependency> 

log4j.properties

# Direct log messages to stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 

# Root logger option 
log4j.rootLogger=INFO, file, stdout 

# Log everything. Good for troubleshooting 
log4j.logger.org.hibernate=INFO 

# Log all JDBC parameters 
log4j.logger.org.hibernate.type=ALL 

hibernate.cfg.xml

<property name="show_sql">true</property> 

Теперь параметры будут регистрироваться.

Смежные вопросы