JAVA程序离不开日志的支持,特别是生成环境服务器,查问题的时候更是离不开日志的支持,现将slf+log4j整合到spring框架中的配置写一下:
项目结构如下:
一、在web.xml中添加log4j的配置文件和监听器
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:resources/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
二、设置log4j配置文件,位置src/resources/log4j.properties,内容如下:
log4j.rootLogger=DEBUG,stdout,InfoFile,ErrorFile
#kong zhi tai shu chu she ding
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.Threshold=DEBUG
log4j.appender.stdout.layout.ConversionPattern=Log4j:[%d{yyyy-MM-dd HH:mm:ss}] %5p %c{1}:%L - %m%n
#info
log4j.appender.InfoFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.InfoFile.Threshold=DEBUG
log4j.appender.InfoFile.file=${catalina.base}/logs/activitiLogs/InfoFile.log
log4j.appender.InfoFile.DatePattern='.'yyyy-MM-dd
log4j.appender.InfoFile.layout=org.apache.log4j.PatternLayout
log4j.appender.InfoFile.layout.ConversionPattern=Log4j:[%d{yyyy-MM-dd HH:mm:ss}] %5p %c{1}:%L - %m%n
#error
log4j.appender.ErrorFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ErrorFile.Threshold=Error
log4j.appender.ErrorFile.File=${catalina.base}/logs/activitiLogs/ErrorFile.log
log4j.appender.ErrorFile.DatePattern='.'yyyy-MM-dd
log4j.appender.ErrorFile.layout=org.apache.log4j.PatternLayout
log4j.appender.ErrorFile.layout.ConversionPattern=Log4j:[%d{yyyy-MM-dd HH:mm:ss}] %5p %c{1}:%L - %m%n
配置中主要设置了控制台、info日志文件和error日志文件的产出:
控制台:输出Debug及以上的日志信息
info、error日志文件:
输出DEBUG及以上日志信息;
每天产生一个新的日志文件;
${catalina.base}表示tomcat服务器根目录(bin文件夹和conf文件夹的父目录);
eclipse中直接启动Tomcat插件服务,则日志输出在workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\logs\activitiLogs(tmp3是会改变的,规律是tmp*);
info级别的只会输入在InfoFile.log文件中,error级别的日志会同时出现在InfoFile.log和errorFile.log文件中;
配置文件还可以设置单个类产生的日志信息单独输出到一个日志文件中,此处没有进行这么细致的配置,仅仅简单的根据级别区分了一下
三、java代码中调用
package com.pb.modult.admin.biz.service;
import org.apache.log4j.Logger;
import org.apache.log4j.spi.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.pb.modult.admin.biz.bo.AdminBO;
/**
* 管理员
* @author Administrator
*
*/
@Service
public class AdminService {
@Autowired
private AdminBO adminBO;
Logger logger = Logger.getLogger(AdminService.class);
org.slf4j.Logger logger2 = org.slf4j.LoggerFactory.getLogger("InfoFile");
public void login(){
logger.info("info日志");
logger.error("error日志");
logger2.debug("debug日志,主键{}", "主键值");
}
}
slf可以设置占位符直接进行字符串的拼接
相关推荐
《圣诞节题材游戏SLG+TPS》是一款基于Unity引擎开发的综合资源,涵盖了策略游戏(SLG)与第三人称射击(TPS)两种玩法。该资源适用于安卓和iOS双平台,采用C#语言编写,提供了从2017年到2021年的完整源码,非常适合...
4. **网络同步**:多人在线游戏需要处理网络同步问题,确保所有玩家看到的是同一游戏状态。Glest的源码可能包含网络通信协议和状态同步机制,这对于理解多人游戏开发至关重要。 5. **AI系统**:即时战略游戏中的...
4. **AI设计**:非玩家角色(NPC)的智能行为是SLG游戏的关键部分。AI系统需要能根据当前局势做出合理的决策,如移动、攻击、防御等。 5. **网络同步**:如果是多人在线的SLG游戏,还需要处理网络同步问题,确保...
标题中的"PLT转SLG.zip"表明这是一个关于将PLT图形格式转换为SLG图形格式的工具包。PLT通常代表HPGL(Hewlett-Packard Graphics Language),是HP绘图仪使用的矢量图形语言,而SLG可能是某种特定的图形格式。这个...
封装SAP标准API,通过事务码SLG0配置日志对象和子对象,通过调用API实现在ABAP程序中记录过程日志,并通过事务码SLG1查看日志,SLG2删除历史日志。
SLG,全称为“策略游戏”(Strategy Game),在IT行业中特指一类强调玩家通过思考和决策来控制游戏进程的游戏类型。在这个名为"slg.rar"的压缩包中,我们找到了一个基于J2ME(Java 2 Micro Edition)平台开发的SLG...
SLG游戏,全称为策略游戏(Strategy Game),是一种玩家通过制定策略来控制游戏进程的类型。在本案例中,我们关注的是将一个基于LGame-J2SE版本的SLG游戏移植到Android平台上的过程。LGame是一个轻量级的游戏开发...
4. **游戏状态管理**:游戏可能有多个不同的状态,如主菜单、游戏关卡、暂停、游戏结束等。源码会有一个状态机来管理这些状态之间的切换。 5. **数据存储**:游戏进度、角色属性等数据可能需要持久化存储。J2ME提供...
4. **图形绘制**:J2ME提供了一些基本的绘图API,如Graphics类,用于在Canvas上绘制游戏画面。开发者可能会利用这些API来实现游戏场景的渲染,包括地图、角色和特效。 5. **事件处理**:游戏需要响应用户的输入,如...
这是一个自制的SLG的Java PC游戏用例,本利仅为游戏本身,源码将随blog更新发布,当然有兴趣的允许反编译,未加密。
OAuth 2.0 是一种授权框架,旨在简化应用程序获取用户授权的过程,以便访问受保护的资源。然而,正如“OAuth 2.0:通往地狱之路”一文指出,OAuth 2.0 在安全性方面存在一些关键问题,这些问题是与OAuth 1.0相比的...
4. **中国SLG类移动游戏产品竞争格局**:市场上主要竞争者包括A公司、B公司等,这些企业在产品研发、市场营销等方面表现出色。 5. **中国SLG类移动游戏厂商竞争格局**:头部厂商占据了较大的市场份额,但中小型企业...
### 2019年中国SLG类移动游戏线上营销市场研究报告关键知识点解析 #### 一、行业背景与市场规模 - **市场规模与增长率**:2018年,中国SLG类移动游戏市场收入规模达到123.5亿元人民币,相较于2017年仅增长1.1%,...
"slg-dev-ops-1.6.2.tar.gz" 是一个针对Python开发者的库,其版本号为1.6.2。这个压缩包文件很可能包含了源代码、文档和其他相关资源,供用户在自己的项目中集成和使用。下面将详细讨论Python库、开发语言Python以及...
### SLG游戏路径算法原理详解 #### 一、SLG游戏概述 SLG(Strategy and Logistics Game)游戏,即策略类游戏的一种,以其独特的棋盘式玩法受到许多玩家的喜爱。在这一类游戏中,玩家需要通过策略规划来进行战斗或...
4. 资源系统:资源是SLG游戏的生命线,包括食物、木材、金属等,玩家需要通过采集、交易等方式获取,并用它们来建设、升级和训练军队。 5. 技能与科技树:SLG页游通常会有技能系统和科技树,玩家通过学习和升级技能...
J2ME中的SLG游戏示例代码,SLG战略实现 时间 2005年4月14日16:44 李波 小图模式 1:光标移动OK 2:滚屏OK 3:人物动作OK 4:人物移动OK 5:移动范围限定OK 6:显示菜单OK 7:多人物模式OK ...
slg\as3.0\bin 先运行服务器文件CaocaoServer.jar,双击就可以了,但是打开了也没有什么提示,只是在任务管理器里多了一个javaw.exe进程 关闭的方法有两个,一个是用任务管理器里直接关闭,一个就是在游戏的对话框里...
SLG,全称为Strategy Game,即策略游戏,是一种玩家通过制定战略、管理资源、指挥战斗等手段来达成游戏目标的游戏类型。在这个名为“还算的上是slg类型的游戏.zip_slg”的压缩包中,我们可以推测这是一款以第一次...
4. **中国SLG类移动游戏产品竞争格局**:市场上涌现出了多家知名企业,如腾讯、网易等,它们凭借丰富的经验和强大的研发实力占据了市场主导地位。 5. **中国SLG类移动游戏厂商竞争格局**:除了大企业外,还有一些中...