使用JAVA创建日志系统有两种方法

    1.使用log4j操作日志文件

    2.使用系统重定向输出日志信息

  方法1:使用log4j操作日志文件(可使用jar或者xml)

     步骤1:下载log4j.jar

        下载地址:http://mirrors.hust.edu.cn/apache/logging/log4j/1.2.17/log4j-1.2.17.zip

    步骤2:导入log4j.jar

        1.在当前工程处右键》new(新建)》Folder(文件夹)<没找到的话选Other》wizards》输出Folder>》Library(文件夹的名字)

        2.Library文件夹处放入刚才下在的log4j-1.2.17.zip里面的log4j-1.2.17.jar

        3.捆绑Library(右键Library》Build Path》ADD to Bulid Path)

    步骤3:配置log4j.properties

        1.在当前工程处右键》new(新建)》File(文件)》File  Name(文件名)》设置为log4j.properties

        2.为log4j.properties添加配置信息

         

 ### 设置Logger输出级别和输出目的地 ###
log4j.rootLogger=debug,stdout,logfile ### 把日子输出到控制台 ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.err
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout ### 把日志信息输出到文件 ###
### 设置输出路径 jbit.log(jbit可以随意改后缀.log) ###
log4j.appender.logfile.File=jbit.log
### 设置配置文件 ###
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %l %F %p %m%n

    步骤4:新建日志文件

        在当前工程处右键》new(新建)》File(文件)》File  Name(文件名)》设置为LogFile.log

    步骤5:在所需的导出日志的Class添加以下代码即可实现导出日志信息功能

          .

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
/**
  测试代码
*/
public class Log4JTest {
//关键代码1:创建日志对象
private static Logger logger =Logger.getLogger(Log4JTest.class.getName());
public static void main(String[] args) {
//关键代码2:设置log4j配置文件
PropertyConfigurator.configure( "log4j.properties" );
try {
throw new Exception("输出信息错误!");
}catch(Exception e) {
logger.error(e.getMessage());
}
} }

  方法2:使用系统重定向输出日志信息

      步骤1:创建PrintStream对象

      步骤2:设置您要输出的System输出格式

          系统输出格式有2种(System.setErr(PrintStream err)和System.setOut(PrintStream Out))

          一种是输出错误信息,一种是输出普通打印信息

      步骤3:实现以下代码即可输出日志信息

      

 import java.io.FileOutputStream;
import java.io.PrintStream; /**
* 测试重定向标准I/O流
* @author Administrator
*
*/
public class RedirectionOutputStreamTest {
public static void main(String[] args) throws Exception {
//创建PrintStream对象
PrintStream ps= new PrintStream(new FileOutputStream("jbit.log"));
//设置输出信息格式(普通信息输出or错误信息输出)
System.setErr(ps);
try {
throw new Exception("非法操作!!!");
}catch(Exception e) {
System.err.println(e.getMessage());
}
} }

          

Java 为程序创建日志系统的更多相关文章

  1. 如何通过Java应用程序创建Word表格

    表格,又称为表,既是一种可视化交流模式,又是一种组织整理数据的手段.人们在通讯交流.科学研究以及数据分析活动当中广泛采用着形形色色的表格.那么如何通过Java应用程序创建Word表格呢?别担心,本文将 ...

  2. 操作实践:Java桌面程序实现日志级别热修改

    声明:迁移自本人CSDN博客https://blog.csdn.net/u013365635 定位问题的时候往往需要动态修改日志级别并且不能影响业务的正常运行,也就是不能重启应用,此时就要使用到动态日 ...

  3. 2.1 自定义日志系统-log4net

    说明 Prism中如果把日志级别设定为DEBUG,会显示框架加载信息 Prism默认是没有日志系统的 步骤 下载log4net包 Install-Package log4net; 在app.confi ...

  4. 面试题:应用中很多jar包,比如spring、mybatis、redis等等,各自用的日志系统各异,怎么用slf4j统一输出?(上)

    一.问题概述 如题所说,后端应用(非spring boot项目)通常用到了很多jar包,比如spring系列.mybatis.hibernate.各类连接数据库的客户端的jar包.可能这个jar包用的 ...

  5. IntelliJ IDEA 运行你的第一个Java应用程序

    IntelliJ IDEA 运行你的第一个Java应用程序创建项目让我们创建一个简单的Java Hello World项目. 单击创建新的项目. 打开新建项目向导.你应该注意的主要是项目的SDK.SD ...

  6. IntelliJ IDEA 运行你的第一个Java应用程序 idea运行main方法

    IntelliJ IDEA 运行你的第一个Java应用程序创建项目让我们创建一个简单的Java Hello World项目. 单击创建新的项目. 打开新建项目向导.你应该注意的主要是项目的SDK.SD ...

  7. Java日志系统框架的设计与实现

    推荐一篇好的文章介绍java日志系统框架的设计的文章:http://soft.chinabyte.com/database/438/11321938.shtml 文章内容总结: 日志系统对跟踪调试.程 ...

  8. Android应用程序框架层和系统运行库层日志系统源代码分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6598703 在开发Android应用程序时,少 ...

  9. WCF 项目应用连载[2] - 创建Lig日志系统

    WCF 项目应用连载[1] - 索引 - 轻量级的Log系统 - Lig Sample -序 现在我们创建一个Lig工程 - Litelog 2.1 创建Lig服务 _________________ ...

随机推荐

  1. react-native 支持 gif 图片

    只需要在android/app/build.gradle中的dependencies字段中添加: compile 'com.facebook.fresco:animated-gif:0.13.0' 然 ...

  2. html5--2.9新的布局元素(5)-hgroup/address

    html5--2.9新的布局元素(5)-hgroup/address 学习要点 了解hgroup/address元素的语义和用法 通过实例理解hgroup/address元素的用法 对照新元素布局与d ...

  3. Servlet传递数据方式

    Servlet传递数据方式 基本概述 Servlet传递数据的方式有很多,这里提供五种方式: 1.静态变量 2.HttpServletResponse的sendRedirect()方法 3.HttpS ...

  4. 配置 git 以ssh公钥访问github

    #生成ssh config touch .ssh/config chmod 600 config 填写: Host github.com User betachen Hostname ssh.gith ...

  5. UML中的6大关系详细说明

    UML中的6大关系详细说明: 1.关联关系: 含义:类与类之间的连结,关联关系使一个类知道另外一个类的属性和方法:通常含有“知道”,“了解”的含义 体现:在C#中,关联关系是通过成员变量来实现的: 方 ...

  6. codeforces 610D D. Vika and Segments(离散化+线段树+扫描线算法)

    题目链接: D. Vika and Segments time limit per test 2 seconds memory limit per test 256 megabytes input s ...

  7. 苹果手机app试玩平台汇总--手机链接入口

    注意: 点击下载,根据提示步骤走即可. 下载后绑定手机号和微信后.才能提现 每天3点更新任务,4点最多! | 平台 | 提现额 | 任务量| 推荐强度 | 下载 | 1.小鱼,10元,大量,强推! → ...

  8. 关于在linux python源文件头部添加 “#!/usr/bin/env python” 不能直接运行的问题

    如果环境变量设置正确 如果文件是从windows拷贝到linux中的 可能是换行符造成的.试试dos2unix命令,或相似的命令,把dos格式的换行符转为unix格式.

  9. poj1631——树状数组求LIS

    题目:http://poj.org/problem?id=1631 求LIS即可,我使用了树状数组. 代码如下: #include<iostream> #include<cstdio ...

  10. 无废话WCF系列教程 -- 李林峰

    李林峰的无废话WCF入门教程 无废话WCF入门教程一[什么是WCF] 无废话WCF入门教程二[WCF应用的通信过程] 无废话WCF入门教程三[WCF的宿主] 无废话WCF入门教程四[WCF的配置文件] ...