2012-05-24 17 views

Odpowiedz

21
<property name="openjpa.Log" value="SQL=Trace" /> 

Włącza rejestrowanie wszystkich instrukcji SQL, minus wartości parametrów.

<property name="openjpa.ConnectionFactoryProperties" value="PrintParameters=true" /> 

Umożliwia rejestrację parametrów SQL.

Logging documentation

4

Jeśli używasz log4j można skonfigurować plik twoi log4j.properties następująco, które będą wyświetlane zarówno zapytanie SQL rodzimych i wszelkie parametry:

log4j.rootLogger=WARN, CONSOLE 

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout 
log4j.appender.CONSOLE.layout.ConversionPattern=%-5p %t %d{ISO8601} %l - %m%n 

log4j.category.openjpa.jdbc.SQL=TRACE 
+0

Opublikowana konfiguracja nie będzie rejestrować parametrów SQL. – Rick

+0

W rzeczywistości rejestruje parametry SQL. Patrz przykład wyjściowe: (???,,,,) WKŁADKA DO TCATALOG (UIDPK, CATALOG_CODE, DEFAULT_LOCALE, Master NAME) WARTOŚCI [params = (długości) 200001 (ciąg) catalog133835591682111 (ciąg) en_US, (int) 0, (String) Test Catalog] – Templar

+1

Wystarczająco fair. To zachowanie zależy od wersji OpenJPA, której używasz. @Zobacz szczegółowe informacje - https://issues.apache.org/jira/browse/OPENJPA-1678 – Rick

0

Cześć Chcę dodać uruchomiony wytrwałości. plik xml

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="2.0" 
    xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence 
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> 
    <persistence-unit name="EHS_PU"> 
     <jta-data-source>mysqlDataSource</jta-data-source> 
     <class>com.ap.entity.EHSDo</class> 
     <class>com.ap.entity.EventDo</class> 
     <properties> 
      <property name="openjpa.Log" value="log4j" /> 
      <property name="openjpa.ConnectionFactoryProperties" value="PrintParameters=true" /> 
     </properties> 
    </persistence-unit> 
</persistence> 
Powiązane problemy