PROBLEMA
Alterar propriedade logSql = true do DataSource nos da as sqls inúteis do Hibernate no seguinte formato:
insert into mkyong.stock_transaction (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME)
values (?, ?, ?, ?, ?, ?)
Mas preferimos informações úteis no seguinte formato:
insert into mkyong.stock_transaction (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME)
values (10.0, 1.1, '2009-12-30', 1.2, 11, 1000000)
SOLUÇÃO
- Configurar a nova dependência de library runtime(group: 'p6spy', name: 'p6spy', version: '1.3')
- Configurar o Driver do DataSource da sua aplicação para o driver "espião" com.p6spy.engine.spy.P6SpyDriver
- Adquirir o arquivo spy.properties Show archive.org snapshot
- Personalizar o arquivo spy.properties com a propriedade realdriver para o driver original
- (Opcional) Personalizar a localização do arquivo de log com a propriedade logfile (padrão é spy.log na raiz do projeto)
- Colocar o arquivo spy.properties na raiz/classpath do seu projeto
- (Observação) Perceba que a propriedade logSql do DataSource não interfere, podendo continuar false para não poluir a saída do seu console com as sqls inúteis
Fonte: http://www.mkyong.com/hibernate/how-to-display-hibernate-sql-parameter-values-solution/ Show archive.org snapshot
Posted by Bruno Vieira to ZeroGlosa (2013-10-31 12:05)