(1)log4j介绍
1 . 为什么要使用日志
答 : 开发阶段发现程序的问题 , 排除错误 , 产品阶段 , 可以记录系统运行的一些状态信息 , 程序运行的状态 ;
2 . System . out . println的局限性
答 : 1 . 不能在运行时打开或者关闭 ;
2 . 不能选择包或者类 , 在运行的时候打开或者关闭 ;
3 . 输出的信息没有分级 ;
4 . 只能输出文本信息 ;
5 . 不能改变输出位置 ;
3 . 什么是log4j ?
答 : log4j是目前最流行的java开源日志处理框架 , 是Apache的子项目 ;
4 . 关于配置文件
答 : log4j中的xml配置文件要优先于properties文件 ;
5 . log4j的特性
答 : 1 . 线程安全 ;
2 . log4j是经过优化速度的 ;
3 . log4j是基于一个名为记录器的层次结构 ;
4 . log4j的支持每个记录器多输出追加器(appender) ;
5 . log4j支持国际化 ;
6 . log4j并不限于一组预定义的设备 ;
7 . 日志行为可以使用配置文件在运行时设置 ;
8 . log4j设计从一开始就是处理java异常 ;
9 . log4j有多个级别 , 通过控制这些级别可以实现将某些不想输出的信息过滤掉 ;
10 . 日志输出的格式可以通过拓展Layout类容易的改变 ;
11 . 日志输出的目标 , 以及在写入策略可通过实现Appender程序接口改变 ;
12 . log4j会故障停止 , 然而 , 尽管它肯定努力确保传递 , log4j不保证每个日志语句将被传递到目的地 ;
6 . log4j的主要组成部分
答 : 1 . loggers : 负责捕获记录信息 ;
2 . appenders : 负责发布日志信息 , 以不同的首选目的地 ;
3 . layouts : 负责格式化不同风格的日志信息 ;
7 . log4j级别(从小到大)
答 : ALL : 各级包括自定义级别 ;
TRACE : 指定细粒度比DEBUG更低的信息事件 ;
DEBUG : 调试级别 ;
INFO : 表明消息在粗粒度级别上突出强调应用程序是非常有帮助的 , 也就是输出一些提示信息 ;
WARN : 输出潜在的有可能出错的情形 , 也就是输出警告信息 ;
ERROR : 指出发生的不影响系统继续运行的错误信息 ;
FATAL : 指出严重的错误 , 这些错误将会导致系统终止运行 ;
OFF : 为最高级别 , 用于关闭所有日志信息的输出 ;
核心规则 : log4j只会输出级别大于或者等于指定级别的信息 ;
8 . properties文件配置
答 : 1 . 配置根Logger , 语法为 :
log4j.rootLogger = [ level ] , appenderNa