2012-05-24 19 views

उत्तर

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

सभी SQL कथन की लॉगिंग को सक्षम करता देखने के बजाय लॉग या कंसोल में मार डाला सभी मापदंडों, शून्य से पैरामीटर मान के साथ क्वेरी को देखना चाहते हैं।

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

SQL पैरामीटर के लॉगिंग को सक्षम करता है।

Logging documentation

4

आप log4j का उपयोग कर रहे हैं, तो आप अपने log4j.properties इस प्रकार फ़ाइल सेटअप, जो दोनों देशी SQL क्वेरी और कोई पैरामीटर प्रदर्शित करेगा कर सकते हैं:

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

आपके द्वारा पोस्ट की गई कॉन्फ़िगरेशन SQL पैरामीटर लॉग नहीं करेगा। – Rick

+0

यह वास्तव में लॉग एसक्यूएल पैरामीटर करता है। निम्नलिखित उदाहरण आउटपुट देखें: टीसीएटीएएलओजी (यूआईडीपीके, कैटलॉग_CODE, DEFAULT_LOCALE, मास्टर, NAME) में प्रवेश करें मूल्य (?,?,?,?,?) [पैराम्स = (लंबा) 200001, (स्ट्रिंग) कैटलॉग 133835591682111, (स्ट्रिंग) en_US, (int) 0, (स्ट्रिंग) टेस्ट कैटलॉग] – Templar

+1

पर्याप्त मेला। यह व्यवहार ओपनजेपीए के संस्करण पर निर्भर करता है जिसका आप उपयोग कर रहे हैं। अतिरिक्त विवरण के लिए @ देखें - https://issues.apache.org/jira/browse/OPENJPA-1678 – Rick

0

ओपन जेपीए कॉन्फ़िगर करने के लिए log4J के लिए, आपको बस इतना करना

ओपन जेपीए विन्यास { 'संपत्ति नाम = "openJpa.Log" मूल्य = "log4j"'}

हठ एक्सएमएल में निम्नलिखित

ओपन जेपीए कॉन्फ़िगरेशन के लिए log4j गुण

log4j.logger.openjpa.Query = ट्रेस log4j.logger.openjpa.jdbc.SQL = ट्रेस

http://openjpa.apache.org/builds/1.0.1/apache-openjpa-1.0.1/docs/manual/ref_guide_logging_log4j.html

0

हाय मैं दृढ़ता चल जोड़ना चाहते हैं। 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> 
0

रिक के जवाब के अलावा, वहाँ भी अप्रबंधित कनेक्शन के लिए किया कनेक्शन कारखानों के लिए "openjpa.ConnectionFactory2Properties" संपत्ति है। (यहां अधिक जानकारी: https://openjpa.apache.org/builds/1.2.3/apache-openjpa/docs/ref_guide_conf_openjpa.html#openjpa.ConnectionFactory2Properties)

संबंधित मुद्दे