web.xml的配配置如下
<!--Spring contextConfigLocation 载入开始 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:config/applicationContext.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!--Spring contextConfigLocation 载入结束 -->
<!--由Sprng载入的Log4j配置文件位置-->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:config/log4j.properties</param-value>
</context-param>
<!--Spring默认刷新Log4j配置文件的间隔,单位为millisecond-->
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<!--Spring log4j Config loader-->
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
log4j.properties 配置如下:
log4j.rootLogger=INFO, DATABASE , A1 ,CONSOLE
log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.URL=jdbc:oracle:thin:@127.0.0.1:1521:orcl
log4j.appender.DATABASE.driver=oracle.jdbc.driver.OracleDriver
log4j.appender.DATABASE.user=test
log4j.appender.DATABASE.password=test
#log4j.appender.DATABASE.sql=INSERT INTO LOG4J(id,Message) VALUES (sysdate,[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n)
log4j.appender.DATABASE.sql=INSERT INTO log4j (log_date, log_level, location, message) VALUES ('%d{ISO8601}', '%p', '%C,%L', '%m')
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
log4j.appender.DATABASE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
表结构如下:
create table LOG4J
(
MESSAGE VARCHAR2(4000),
LOG_DATE VARCHAR2(50),
LOG_LEVEL VARCHAR2(50),
LOCATION VARCHAR2(500)
)
报错如下:
2012-2-28 0:53:44 org.apache.catalina.core.ApplicationContext log
信息: Initializing log4j from [classpath:config/log4j.properties]
2012-2-28 0:53:44 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.util.Log4jConfigListener
java.lang.IllegalArgumentException: Illegal pattern character 'l'
at java.text.SimpleDateFormat.compile(SimpleDateFormat.java:751)
at java.text.SimpleDateFormat.initialize(SimpleDateFormat.java:558)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:483)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:458)
at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:218)
at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96)
at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654)
at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612)
at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:509)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:415)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:316)
at org.apache.log4j.PropertyWatchdog.doOnChange(PropertyConfigurator.java:682)
at org.apache.log4j.helpers.FileWatchdog.checkAndConfigure(FileWatchdog.java:88)
at org.apache.log4j.helpers.FileWatchdog.<init>(FileWatchdog.java:57)
at org.apache.log4j.PropertyWatchdog.<init>(PropertyConfigurator.java:674)
at org.apache.log4j.PropertyConfigurator.configureAndWatch(PropertyConfigurator.java:382)
at org.springframework.util.Log4jConfigurer.initLogging(Log4jConfigurer.java:106)
at org.springframework.web.util.Log4jWebConfigurer.initLogging(Log4jWebConfigurer.java:144)
at org.springframework.web.util.Log4jConfigListener.contextInitialized(Log4jConfigListener.java:47)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3934)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4429)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:987)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:909)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:495)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:583)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2012-2-28 0:53:44 org.apache.catalina.core.StandardContext start
严重: Error listenerStart
2012-2-28 0:53:44 org.apache.catalina.core.StandardContext start。
能正常加载log4j,但写入数据失败。
相关推荐
在Java开发领域,Spring框架是不可或缺的一部分,它提供了一个全面的编程和配置模型...通过合理配置`log4j.properties`文件,开发者可以有效地监控系统状态,及时发现并解决问题,同时避免过多的日志输出影响系统性能。
在 Spring 中整合这两个框架,Log4j 配置可以帮助我们追踪数据库操作的细节,如 SQL 查询、连接池状态等,这对于优化数据库性能和定位问题非常有帮助。 例如,我们可以在 Log4j 配置中专门针对 Hibernate 和 ...
在Java开发领域,日志记录是一项至关重要的任务,它能够帮助...理解并熟练运用Log4j配置,能够极大地提升开发效率和问题排查能力。在实际开发中,根据项目需求合理配置Log4j,可以有效提高系统的可维护性和稳定性。
在这个例子中,`log`对象通常是通过Spring的自动注入得到的,它已经配置好了Log4j的日志输出。 在提供的"test_AOP"这个子文件夹中,我们可以推测它包含了一个关于Spring AOP(面向切面编程)的示例。AOP是Spring...
3. **配置SpringBoot**:在`application.properties`中指定Log4j配置文件位置。 ```properties logging.config=classpath:log4j.properties ``` ### SpringBoot与Log4j2 Log4j2作为Log4j的升级版,提供更好的性能...
本教程将详细介绍如何配置Log4j以使用DBCP连接池,并将日志信息存储到MySQL数据库中。 首先,我们需要在项目中引入Log4j和DBCP的相关依赖。对于Maven项目,可以在pom.xml文件中添加如下依赖: ```xml ...
### Log4j写入数据库详解 #### 一、Log4j简介 Log4j是一个流行的开源日志框架,由Apache Software Foundation开发维护。它提供了一种灵活的方式来控制日志的生成,使得日志的级别、格式以及输出目的地都可以在运行...
2. 配置Log4j2:Spring Boot默认使用`src/main/resources/log4j2.xml`或`log4j2.json`作为Log4j2的配置文件。你可以根据需求自定义日志级别、输出格式、输出位置等。 四、Log4j2配置详解 1. 日志级别:Log4j2支持...
在这个"springmvc log4j配置 demo"中,我们将探讨如何将Log4j集成到Spring MVC应用中,以便进行高效且有组织的日志管理。 首先,Log4j是Apache的一个开源项目,提供了一套灵活的日志记录系统。它的优点在于可配置性...
标题中的“log4jdbc-log4j2配置简记”指的是在Java开发中使用log4jdbc-log4j2库来监控和记录SQL查询的过程。log4jdbc是一个开源项目,它允许开发者通过日志系统来追踪数据库操作,而log4j2是log4j的升级版,提供了更...
2. **配置Log4j**:创建一个名为`log4j.properties`的配置文件,放置在`src/main/resources`目录下。在这个文件中,我们可以指定日志输出的级别(DEBUG, INFO, WARN, ERROR等)、输出目的地(控制台、文件、数据库等...
- Log4j 特点:配置灵活、性能高效、支持多种输出方式(文件、控制台、数据库等)。 2. **Spring MVC 中的日志需求** - 在 MVC 框架中,日志用于跟踪请求处理、异常处理以及服务层的业务逻辑,有助于理解程序运行...
【标题】"ssmdemo+log4j写入数据库"是一个关于使用Spring、SpringMVC、MyBatis和Log4j框架集成实现日志记录到数据库的案例。在这个项目中,开发者正在探索如何将Log4j的日志信息存储在数据库中,以便进行更有效的...
在Spring框架中,可以通过Spring的Log4j配置来统一管理日志,方便调试和问题排查。 在提供的文件名称列表中,虽然没有具体的jar包名称,但通常Spring框架所需的jar包包括:spring-core、spring-context、spring-...
这里提到的四个关键配置文件——`spring-mvc.xml`、`spring-mybatis.xml`、`web.xml`以及`log4j.properties`,对于一个基于Java的Web应用来说至关重要,特别是使用Spring MVC和MyBatis框架的时候。接下来,我们将...
以上就是关于"spring+springMVC+mybatis+log4j框架整合"的主要知识点。通过这样的整合,开发者可以构建出一个高效、灵活、易维护的Java Web应用,同时借助log4j进行详细的日志记录,以便于问题排查和性能优化。在...
6. **配置Log4j2**:在项目中添加Log4j2的配置文件(如log4j2.xml或log4j2.json),定义日志级别、输出目的地(如控制台、文件)和格式。 7. **编写业务逻辑**:使用Spring MVC的Controller、Service和DAO组件实现...
1. **引入Log4j配置**:在项目的`src/main/resources`目录下创建`log4j2.xml`或`log4j2.json`文件,用于定义日志级别、输出位置、格式等。 ```xml [%t] %-5level %logger{36} - %msg%n"/> ...
在项目中,我们需要修改Spring Boot的默认配置,指定使用Log4j2,并在项目的配置文件中(如`log4j2.xml`或`log4j2.json`)定义日志级别、输出格式和目标位置。 在项目中,"springBootMybatis"这个压缩包文件可能...
本教程将详细阐述如何使用四个关键组件——Maven、SpringMVC、MyBatis和Log4j——来搭建一个强大的Web应用框架,旨在提高开发效率并优化项目管理。 **Maven** 是一个流行的项目管理和综合工具,它通过统一的构建...