Ya que en log4j javadoc es

ADVERTENCIA: Esta versión de JDBCAppender es muy probable que sea reemplazado por completo en el futuro. Además, no se registran excepciones.

¿Qué debo hacer para iniciar sesión en una base de datos?

InformationsquelleAutor Daniel Moura | 2009-09-01

3 Comentarios

  1. 32

    Si usted está buscando para una base de datos appender que no sólo funciona, sino que también se admite la agrupación de conexiones, se mantiene y debidamente documentado, de considerar logback del DBAppender.

    Irónicamente, la advertencia en los javadocs sobre la eliminación de JDBCAppender en futuras versiones de log4j fue escrito por mí.

    • Es esta respuesta todavía válida después de 3 años o hay algún otro registro de base de datos disponible en el marco?
    • Puedo confirmar que es válido, sólo utiliza JDBCAppender recientemente.
    • Yo soy de registro de pojo objeto en el registro a través de JDBCAppender. Me gustaría insertar diferentes pojo valor del objeto en la base de datos a través de registro. Cómo hacerlo? Gracias.
  2. 11

    Puede utilizar un alternativa appender, pero realmente Log4j 1.2 va a ser la vuelta y estándar para un largo tiempo. Ellos desarrollaron DBAppender como parte de sus receptores compañeros, lo que no se ha publicado oficialmente, pero se puede descargar el código fuente y obtener su propio yendo tan bien.

    A menos que el problema de no registro de excepciones molesta, JDBCAppender está bien. Cualquier actualización a 2.0 va a ser más radical que el mero cambio de JDBCAppender (si 2.0 pasa), así que no te preocupes acerca de su uso, a pesar de la advertencia. Ellos claramente no tienen una sólida hoja de ruta o línea de tiempo para la introducción de una nueva versión, y 1.2.15 fue lanzado en 2007.

  3. 0
        **log4j.properties file**
    
        # Define the root logger with appender file
        log4j.rootLogger = DEBUG, DB
    
        # Define the DB appender
        log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
    
        # Set JDBC URL
        log4j.appender.DB.URL=jdbc:mysql://localhost/log
    
        # Set Database Driver
        log4j.appender.DB.driver=com.mysql.jdbc.Driver
    
        # Set database user name and password
        log4j.appender.DB.user=root
        log4j.appender.DB.password=root
    
        # Set the SQL statement to be executed.
        log4j.appender.DB.sql=INSERT INTO actionlg(user_id, dated, logger, level, message) values('%X{userId}',' %d{yyyy-MM-dd-HH-mm}','%C','%p','%m')
    
        # Define the layout for file appender
        log4j.appender.DB.layout=org.apache.log4j.PatternLayout
    
      **Java Class**  
        Log4jExamples.java
        import java.sql.*;
        import java.io.*;
    
        import org.apache.log4j.Logger;
        import org.apache.log4j.MDC;
    
    
        public class Log4jExample {
               /* Get actual class name to be printed on */
               static Logger log = Logger.getLogger(Log4jExample.class.getName());
               public static void main(String[] args)throws IOException,SQLException{
                  log.error("Error");
                  MDC.put("userId", "1234");
               }
        }
    
        **libs required**
         - mysql-connector-java-3.1.8-bin.jar 
         - log4j-1.2.17.jar
    

Dejar respuesta

Please enter your comment!
Please enter your name here