`
xurichusheng
  • 浏览: 347434 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

封装 lo4j (转)-01

阅读更多
import java.text.MessageFormat;

import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.spi.LoggingEvent;

/**
 * @ClassName: Log4jLogger
 * @Description: log4j封装
 * @author wenjianhai
 * @date 2011-5-19 下午03:49:48
 * @version V1.0
 */
public class Log4jLogger {

	private final Logger logger;
	private static final String FQCN;

	static {
		FQCN = Log4jLogger.class.getName();
	}
	
	private Log4jLogger(Class<?> clazz){
		logger = Logger.getLogger(clazz);
	}
	
	private Log4jLogger(){
		logger = Logger.getRootLogger();
	}
	
	public static Log4jLogger getLogger(Class<?> clazz){
		return new Log4jLogger(clazz);
	}
	
	public static Log4jLogger getRootLogger(){
		return new Log4jLogger();
	}
	
	public void trace(Object message){
		if(logger.isTraceEnabled()){
			forcedLog(logger, Level.TRACE, message);
		}
	}
	
	public void trace(Object message, Throwable t) {
		if (logger.isTraceEnabled()) {
			forcedLog(logger, Level.TRACE, message, t);
		}
	}

	public void trace(String pattern, Object... arguments) {
		if (logger.isTraceEnabled()) {
			forcedLog(logger, Level.TRACE, format(pattern, arguments));
		}
	}
	public void trace(String pattern, Throwable t, Object... arguments) {
		if (logger.isTraceEnabled()) {
			forcedLog(logger, Level.TRACE, format(pattern, arguments), t);
		}
	}
	
	public void debug(Object message) {
		if (logger.isDebugEnabled()) {
			forcedLog(logger, Level.DEBUG, message);
		}
	}

	public void debug(Object message, Throwable t) {
		if (logger.isDebugEnabled()) {
			forcedLog(logger, Level.DEBUG, message, t);
		}
	}

	public void debug(String pattern, Object... arguments) {
		if (logger.isDebugEnabled()) {
			forcedLog(logger, Level.DEBUG, format(pattern, arguments));
		}
	}
	public void debug(String pattern, Throwable t, Object... arguments) {
		if (logger.isDebugEnabled()) {
			forcedLog(logger, Level.DEBUG, format(pattern, arguments), t);
		}
	}
	
 
分享到:
评论

相关推荐

    ASP-134486-01 AD封装.zip

    ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装ASP-134486-01 AD封装...

    TYPE-C-31-M-01 USB Type-c 沉板母座allegro封装 .dra

    TYPE-C-31-M-01 USB Type-c allegro封装 韩荣HRo TYPE-C-31-M-01 规格:10mm*9.65mm 插拔力:5-20N 类型:TYPE-C母座 品名:TYPE-C母座 TYPE-C母座技术参数: 1.额定负荷: DC 40V 2.5A 2.接触电阻: ≤40mΩ 3.绝缘阻抗:...

    asp-134488-FMC-hpc封装

    4. SMT(表面贴装技术)相关封装参数 提及了SMT相关的参数和注意事项,比如“Tape and Reel”,这是电子产品表面贴装组装中常见的自动化方法,用于大批量生产,以实现高效的元件分配和贴装。 5. 封装材料和认证 ...

    asp-134486-01-mkt-fmc-hpcf封装信息

    标题中提到的“asp-134486-01-mkt-fmc-hpcf封装信息”,这很可能是指某个具体型号的硬件封装资料。硬件封装信息通常包含了用于制造和识别电子组件的详细尺寸、材料类型、工艺规格等数据。从描述中的“数据详细,请...

    J30J系列PCB封装库(Allegro库)_pcb封装库制作

    包含J30J等封装,总共几百个封装,是allegro的PCB封装,只有PCB封装,有dra文件,pad文件,psm文件,fsm文件。还包含了一些其他的封装, 所有的封装名和器件名都在excel表里面有对应关系,库文件很全

    SOT封装库SOT23-5 SOT223 SOT143 SOT89 SOT343 SOT23ALTIUM库(AD库PCB封装库 ).zip

    SOT封装库SOT23_5 SOT223 SOT143 SOT89 SOT343 SOT23ALTIUM库(AD库PCB封装库 ): SOT 89.PcbLib SOT143_L.PcbLib SOT143_M.PcbLib SOT143_N.PcbLib SOT223_L.PcbLib SOT223_M.PcbLib SOT223_N.PcbLib SOT23-5.PcbLib...

    sop4 封装尺寸图

    SOP4封装是一种常见的半导体器件封装形式,全称为Small Outline Package,意为小型轮廓封装。这种封装主要用于集成电路(IC)的封装,特别是针对数字逻辑电路和一些微控制器等芯片。SOP4封装的特点是体积小、重量轻...

    Log4j笔记 第九章 封装Log4j

    《Log4j笔记 第九章 封装Log4j》 在Java开发中,日志记录是一项非常重要的任务,它帮助我们追踪程序运行时的状态,定位和解决错误。Log4j是Apache组织提供的一款强大的日志框架,因其高效、灵活和可配置性而广受...

    TYPE-C-31-M-02 USB Type-c 母座allegro封装 .dra

    TYPE-C-31-M-02 USB Type-c allegro封装 韩荣HRo TYPE-C-31-M-02 规格:10mm*9.65mm 插拔力:5-20N 类型:TYPE-C母座 品名:TYPE-C母座 TYPE-C母座技术参数: 1.额定负荷: DC 40V 2.5A 2.接触电阻: ≤40mΩ 3.绝缘阻抗:...

    AltiumDesigner超级PCB封装库-----三D元件库.zip

    4. **丰富多样性**:超级PCB封装库通常包含了大量的常用电子元件模型,覆盖了电阻、电容、IC、连接器等各种类型,满足不同项目的需求。 5. **自定义能力**:如果标准库中没有所需的元件模型,用户可以利用Altium ...

    PCB设计 SCN-2-19 AD封装.zip PCB设计 SCN-2-19 AD封装.zip

    PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19...

    h264封装flv-----flv-muxer

    4. **封装NAL单元**:将NAL单元转换为FLV的视频数据块。这涉及到添加FLV的标签头,包括时间戳、数据类型(视频或音频)和数据长度。对于H.264,NAL单元通常会被前缀一个特定的字节序列,例如0x09,表示这是一个关键...

    QSOP24封装转DIP24封装的PCB文件----24引脚的0.635间距转成24引脚的2.54间距PCB.ddb

    QSOP24封装转DIP24封装的PCB文件----24引脚的0.635间距转成24引脚的2.54间距PCB

    log4j2-2.3

    6. **事件数据结构**:Log4j2使用LogEvent对象封装日志信息,使其更易于处理和过滤。 7. **日志级别的优先级**:Log4j2允许设置每个Logger的优先级,便于控制日志输出的详细程度。 8. **自动重加载配置**:如果...

    JEDEC,JESD, JEP 95 4.14 J-01.pdf

    JEDEC JEP 95 4.14 J-01.pdf ...JEDEC JEP 95 4.14 J-01.pdf文档提供了BGA封装的设计注册要求,涵盖了术语定义、设计要求、尺寸tolerance等方面的内容,对于电子行业的设计和制造人员具有重要的参考价值。

    TO-263封装

    4. **PCB库创建**:在PCB设计软件中,如Altium Designer(AD),需要有正确的封装库。`TO-263.PcbLib`文件即为此目的,包含TO-263封装的详细模型,包括引脚位置、尺寸和焊盘形状。设计师应根据实际器件参数导入并...

    DDA(R-PDSO-G8)封装

    Altium Designer DDA PCB封装

    TO系列PCB封装 TO-3,TO-5,TO-18,TO-39

    TO-3,TO-5,TO-18,TO-39,TO-46,TO-52,TO-66,TO-72,TO-92,TO-126,TO-126H,TO-126V,TO-202H,TO-202V,TO-202VS,TO-218H,TO-218V等等封装

    4G5G模块MSATA盘(M.2-B-KEY+M.2-E-KEY 封装) AD集成封装库.zip

    4G5G模块MSATA盘(M.2_B-KEY+M.2_E-KEY 封装) AD集成封装库,已经其他一些USB3.0 ,RJ45 ,SD卡等,详细封装型号如下: Component Count : 69 Component Name ----------------------------------------------- ...

    xh2.54-4p 贴片AD封装.PcbLib

    AD封装带3D 自已第一次做带3D的封装。 xh2.54-4p 贴片AD封装,方便下载,可做多种3D封装。

Global site tag (gtag.js) - Google Analytics