1

javaとsqlにlog4jを使いたいです。クラスで"logger.debug("log4j logger")"を使用せずに Java および SQL ログを出力したい。

以下は、使用されるクラスと log4j プロパティです。

package com.log4j;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class LogTest {

public static void main(String[] args) throws Exception{
      final  Logger logger = Logger.getLogger(LogTest.class);
      PropertyConfigurator.configure("log4j.properties");
    try {
        Class.forName("oracle.jdbc.OracleDriver");
        Connection   conn = DriverManager.getConnection("XXX", "YYY", "ZZZ");          
       String inserQuery = "insert into table1 (name,id) values (?,?)";
       PreparedStatement prestat = conn.prepareStatement(inserQuery);
       prestat.setString(1, "Test");
       prestat.setString(2, "2");
       prestat.executeUpdate();
    }
    catch (Exception ex)
    {
        System.out.println("Exception: " + ex.getMessage() + "");

    }
}

}

以下はlog4jのプロパティです

log4j.rootLogger=DEBUG,CA
log4j.logger.java.sql=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

お知らせ下さい。

どんな助けでも大歓迎です

ありがとう

4

3 に答える 3

3

決して使用されない変数を作成したようなもので、なぜそれを作成するのか、使用した方が良いでしょう

logger.error("Exception: " + ex.getMessage() + "");

それ以外の

System.out.println("Exception: " + ex.getMessage() + "");
于 2014-11-04T05:25:25.607 に答える
1

java.sql にロガー インターフェイスがある場合、LOG4J や SLF4J ではなく、おそらく java.util.logging になります。いくつかの java.sql.* クラスを見てきましたが、ログがまったくないように見えます。これらのクラスのいずれかが 4J ロギングを使用していれば、スキームは機能していたはずですが、そうではないため、コードにロギングを配置する必要があります。

于 2014-11-04T05:18:53.267 に答える
0

データベースに送信されたSQLを出力したい場合は、 log4jdbc-log4j2を使用することをお勧めします。これはプロキシとして機能します。

プロキシー

を使用する場合はlog4j.jar、 と を追加する必要がslf4j-api.jarありslf4j-log4j12.jarます。

log4jdbc 構成


ノート

*画像はJPA から取得しました - Tracer les requêtes SQL avec Log4jdbc

于 2014-11-06T03:47:28.387 に答える