易截截图软件、单文件、免安装、纯绿色、仅160KB

Java日志系统研究


Java日志系统研究
 
日志,源于log,有航海日志的意思。指记录海员记录每天的行程,生活及发生的事件。在软件开发领域,用来监控代码中变量变化,跟踪代码运行的轨迹,在开发环境中担当调试器作用,向控制台或文件输出信息。
 
几乎所有的软件开发语言(平台)都有自己的日志系统,java,.net,ruby,php等。在java领域,存在大量的日志组件,
open-open
收录了21个日志组件。
从功能上讲,这些可以分为三类,一是日志工具类,它实现了日志的记录,格式化和级别的划分,代表为logback,simplelog。二是日志系统,提供了完整的框架功能并实现了日志记录。代表为jul(jdk提供的日志框架),log4j(apache开源项目)。三是抽象整合类,它提供了一组接口,完成日志功能,通过包装其他日志工具或系统来工作jcl(apache开源组件),slf4j。
 
从历史上讲,log4j出现最早,
Ceki Gülcü是其创造者。自java1.4开始,jdk提供了java.util.logging类库,提供了一个完整的日志框架,在设计上要比log4j要更清晰。这个时候,除此之外,还有一些其他日志组件,java领域从来不缺少轮子,总是有人在发明轮子,轮子多了,就会产生混乱,就会有人站出来,要一统江湖,于是,jcl,apache一个开源的日志组件诞生了,它提供了一组日志系统的接口,通过对log4j,jul和simplelog进行包装,提供日志功能。这样,开发的时候,只需要使用jcl,通过配置,灵活选择底层实现。这样,对于开发人员来说,开发更简单了些。看起来一切太平了,可Ceki Gülcü认为,应该有一个更好的日志框架。log4j经过这么久的发展,已经成为了一个巨人,亦伤痕累累,从外面看,经典,庄重,强壮,从内部看,却有着一根根的飞线(ThinkPad),充满了代码的坏味道。或许他没有勇气来改造这个巨人,离开也许是最好的选择,于是,出来,创建了slf4j,来取代jcl,创建了logback,来取代log4j。目前,log4j和jul应用最为广泛,slf4j作为新兴的抽象层,整合logback,以其简洁,快速,正被越来越多的顶级项目使用。
 
代表日志组件简要介绍。
Log4j,历史悠久,应用广泛,被移植到多种语言及平台,功能强大,在众多的日志框架中,仍占据着主导地位。
Jul,jdk提供的日志框架,设计精良,和jdk紧密结合,控制灵活,使用简单。
Jcl,提供了日志的抽象层,可以整合多种实现。但有classloader问题。
Slf4j,提供了jcl的超集,避免了classloader问


相关文档:

java 日期计算(几天前后)

public class DateTest {
 public static void main(String[] args) {
  Date date = new Date(); // 新建一个日期
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 格式化日期
  String beforeDate = sdf.format(getDateBefore(date, 10));
  System ......

《java语言程序设计(一)》2009年自学考试大纲第1章

《java语言程序设计(一)》2009年自学考试大纲第1章
www.wesiedu.com   2009-5-5   在线模拟考场
二、课程内容与考核目标
第1章 Java语言基础
(一)课程内容
1.1 Java语言的特点
1.2 Java应用程序和小应用程序
1.3 Java程序的开发过程
1.4标识符和关键字
l.5基本数据类型
1.5.1 逻辑类型
1 ......

《java语言程序设计(一)》2009年自学考试大纲第5章


第5章图形界面设计(一)
(一)课程内容
5.1 图形界面设计基础
5.1.1 AWI’和Swing
5.1.2组件和容器
5.1.3事件驱动程序设计基础
5.2框架窗口 .
5.3标签、按钮和按钮事件
5.3.1 标签
5.3.2按钮和按钮事件处理
5.4面板
5.4.1 JPanel
5.4.2 JScrollPane
5.5布局设计
5.5.1 FlowI.ayout布局
5.5.2 BorderI.a ......

Java调用C#的WebService实例三(实际应用)

/*
   本段代码在公司项目中实际远程调用第三方公司提供的C#开发WebService的示例
*/
/**
  * 登录游戏
  *
  * @param paramPN
  * @param paramTerraceID
  * @param paramSvrID
  */
 private String loginGame(String paramPN, HttpServletRequest req){
&n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号