要将操作日志记录到数据库,可以使用 Log4j 的 JDBC Appender。以下是一个示例配置文件 log4j.properties:

# Set root logger level to DEBUG and its only appender to jdbc
log4j.rootLogger=DEBUG, jdbc

# Configure JDBC appender
log4j.appender.jdbc=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.jdbc.URL=jdbc:mysql://localhost:3306/logs
log4j.appender.jdbc.driver=com.mysql.jdbc.Driver
log4j.appender.jdbc.user=root
log4j.appender.jdbc.password=your_password
log4j.appender.jdbc.sql=INSERT INTO logs (timestamp, level, logger, message) VALUES ('%d{yyyy-MM-dd HH:mm:ss}', '%p', '%c', '%m')

# Define the layout for the JDBC appender
log4j.appender.jdbc.layout=org.apache.log4j.PatternLayout
log4j.appender.jdbc.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

在上述配置中,定义了一个 jdbc appender,配置了数据库的连接信息和插入日志的 SQL 语句。可以根据实际需求修改 URL、driver、user、password 和 sql 的配置。

接下来,在 Java 代码中使用 Log4j 记录日志:

import org.apache.log4j.Logger;

public class MyClass {
    private static final Logger logger = Logger.getLogger(MyClass.class);

    public static void main(String[] args) {
        logger.debug('This is a debug message');
        logger.info('This is an info message');
        logger.error('This is an error message');
    }
}

以上代码会将日志信息写入数据库表 logs 中的相应字段。

注意:要使用 Log4j 的 JDBC Appender,需要将 log4j 相关的 jar 包添加到项目的 classpath 中。

Java Log4j: 如何将操作日志记录到数据库

原文地址: http://www.cveoy.top/t/topic/qwtX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录