Spring-Spring Web项目中配置使用Log4j 2
- Log4j 2概述
- 为什么要使用Log4j 2
- Spring中配置Log4j 2
- 添加Maven依赖
- 配置webxml
- 配置Log4j 2
- 使用Log4j 2
Log4j 2概述
请查看另外一篇博文Log4j2-Log4j 2介绍及使用
为什么要使用Log4j 2
Web容器中的监听 Log4jConfigListener在 Spring 4.2.1及以后被废弃。
Spring中配置Log4j 2
添加Maven依赖
<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>${log4j2.version}</version>
</dependency>
<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>${log4j2.version}</version>
</dependency>
<!-- web容器中需要添加log4j-web -->
<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-web</artifactId><version>${log4j2.version}</version>
</dependency><properties><log4j2.version>2.8.2</log4j2.version>
</properties>
Web Applications 使用 Log4j 2 需要另外引用log4j-web
https://logging.apache.org/log4j/2.x/manual/webapp.html
配置web.xml
<!-- log4j2-begin --><!-- 默认在class类路径下,不需要额外配置引用 ,如果更改到其他地方,请配置 -->
<context-param> <param-name>log4jConfiguration</param-name> <param-value>classpath:log4j2.xml</param-value>
</context-param> <listener><listenerclass>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class>
</listener>
<!-- log4j2-end -->
配置Log4j 2
具体查看 配置Log4j 2
我们这里以xml的方式编写Log4j 2的配置文件
举例,具体请根据实际需要修改
<?xml version="1.0" encoding="UTF-8"?>
<!-- log4j2使用说明:
使用方式如下:
private static final Logger logger = LogManager.getLogger(实际类名.class.getName());--><!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
<!--Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出-->
<!--monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数-->
<configuration status="info" monitorInterval="180"><!-- 文件路径和文件名称,方便后面引用 --><Properties><Property name="backupFilePatch">D:/workspace/workspace-sts/backupOracle/log/</Property><Property name="fileName">backupOracle.log</Property></Properties><!--先定义所有的appender--><appenders><!--这个输出控制台的配置--><Console name="Console" target="SYSTEM_OUT"><!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)--><ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY" /><!-- 输出日志的格式--><PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n" /></Console><!--这个会打印出所有的信息,每次大小超过size,则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩,作为存档--><RollingFile name="RollingFile" fileName="${backupFilePatch}${fileName}"filePattern="${backupFilePatch}$${date:yyyy-MM}/app-%d{yyyyMMddHHmmssSSS}.log.gz"><PatternLayout
pattern="%d{yyyy.MM.dd 'at' HH:mm:ss.SSS z} %-5level %class{36} %L %M - %msg%xEx%n" /><!-- 日志文件大小 --><SizeBasedTriggeringPolicy size="20MB" /><!-- 最多保留文件数 DefaultRolloverStrategy属性如不设置,则默认为最多同一文件夹下7个文件,这里设置了20 --><DefaultRolloverStrategy max="20"/></RollingFile></appenders><!--然后定义logger,只有定义了logger并引入的appender,appender才会生效--><loggers><!--过滤掉spring和mybatis的一些无用的DEBUG信息--><logger name="org.springframework" level="INFO"></logger><logger name="org.mybatis" level="INFO"></logger><root level="trace"> <appender-ref ref="RollingFile"/> <appender-ref ref="Console"/> </root> </loggers>
</configuration>
使用Log4j 2
具体查看另外一篇博文 Log4j2-Log4j 2介绍及使用
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;...private static final Logger logger = LogManager.getLogger(XXX.class.getName());
启动web项目可以看到如下信息
Spring-Spring Web项目中配置使用Log4j 2相关推荐
- 重新学习Spring一--Spring在web项目中的启动过程
1 Spring 在web项目中的启动过程 Spring简介 Spring 最简单的功能就是创建对象和管理这些对象间的依赖关系,实现高内聚.低耦合.(高内聚:相关性很强的代码组成,既单一责任原则:低耦 ...
- 详解log4j2(下) - Log4j2在WEB项目中配置
官方介绍和学习文档网址为http://logging.apache.org/log4j/2.x/ 首先在WEB项目中引入以下几个jar包: ① log4j-api-2.4.1.jar ② log4j- ...
- 不使用框架的web项目中配置log4j
在不使用框架的时候,一般使用监听器或者Servlet来初始化log4j进行启动,这里我使用Servlet,代码入下: import java.io.File; import java.io.IOExc ...
- 在maven web项目中配置log4j打印日志及Mybatis sql语句
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/wei542657623/article/details/51591736 1 添加依赖 在pom.x ...
- day63-webservice 08.在web项目中配置带有接口的webservice服务
这个是配置带有接口的WebService的服务. http://localhost:8080/cxf-web-server/service 带有接口的实现类也给它做好了.jaxws:endpoint是 ...
- maven mybatis mysql_Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问...
标签: 本篇内容还是建立在上一篇Java Web学习系列--Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Ja ...
- struts2+spring 项目中配置tiles的解决方案
Tiles是一种layout的概念,可以将一个页面拆分成多个部分.比如:title,header,body,bottom等等.在一个项目中,这些部分有可能是相同的.这时使用Tiles配置相同的部分再好 ...
- SpringMVC,MyBatis项目中兼容Oracle和MySql的解决方案及其项目环境搭建配置、web项目中的单元测试写法、HttpClient调用post请求等案例
要搭建的项目的项目结构如下(使用的框架为:Spring.SpingMVC.MyBatis): 2.pom.xml中的配置如下(注意,本工程分为几个小的子工程,另外两个工程最终是jar包): 其中 ...
- Spring在web开发中的应用
(1)在 web 项目中要使用 spring 需要导入一个 jar 包: spring-web-4.2.4.jar包 (2)在 web.xml 文件中配置 Listener <listener& ...
最新文章
- 感受lambda之美,推荐收藏,需要时查阅
- 深度睡眠中,记忆如何被保持?
- python画图代码turtle-使用Python的turtle模块画图的方法
- A-Frame.js 学习文档翻译(一)实体
- redis php 持久化,详解Redis RDB持久化、AOF持久化,
- 把数字翻译成字符串python_46 把数字翻译成字符串
- dockerfile安装yum_Docker镜像-基于DockerFile制作yum版nginx镜像
- 特征值和特征向量到底描述了什么
- python数据分析框架
- 自定义SharePoint Webservice
- jquery插件(转)
- 绝对定位实现漂浮工具条停靠在内容旁边
- Week of year bug in Ax3
- 在韩家炜老师的实验室和家里作客 — 旅美散记之二
- 计网实验三 虚拟局域网 VLAN
- Windows 10 office开机自启白页关闭,只需三步轻松关闭(亲测可用)
- Linux启动阶段Grub损坏修复
- Unity报错:InvalidOperationException:You are tring to read lnput using the UnityEngine. ……的解决办法
- request.setAttribute()的用法
- Worse is Better
热门文章
- 浅悟劳动法之肯德基劳务派遣案
- Source Insight 4.0的 序列号 license文件
- 相同字符串,但是equals为false?我多年的java白学了吗?
- [opencv] 伪彩色和彩虹图
- 和快手抖音类似的短视频直播APP,仿v聊富聊花间一对一直播收费APP
- 售前工程师的成长---一个老员工的经验之谈
- mysql创建主键约束_mysql建表键约束(主键约束,自增约束)
- 微信注册验证成功之后不跳转_2分钟快速注册公众号,零基础小白也能轻松学会...
- 进程控制——进程等待,程序替换
- 超级终端测试通过的 ymodem 协议