自己写的java日志类和方法代码分享

 更新时间:2014年01月26日 15:38:15   作者:  
这篇文章主要介绍了一个自己写的java日志类和方法,下面把代码分享给大家

复制代码 代码如下:

import java.io.*;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.logging.Logger;

public class AndyLogger
{
    //The defaulted root path of SSLVPN installation
    private static String rootPath = "C:\\temp2";

    //variable for creating new line
    private final static String enter = System.getProperty("line.separator");

    private static SimpleDateFormat sdf =
        new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

    public static synchronized void log(String fileName, String logMessage)
    {
        try
        {
            File folder = new File(rootPath);
            if(!folder.exists())
            {
             folder.mkdir();
            }
            File file = new File(rootPath + "\\" + fileName + ".log");
            if(!file.exists())
            {
             file.createNewFile();
            }
            BufferedReader in = new BufferedReader(new FileReader(file));
            String str = "";
            String strToal = "";

            while ((str = in.readLine()) != null)
            {
                strToal += (str + enter);
            }    
            strToal = strToal + (sdf.format(new Date()) + " " + logMessage + enter);
            in.close();
            BufferedWriter out = new BufferedWriter(new FileWriter(file));
            out.write(strToal);
            out.close();

        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }

   
    public static synchronized void log(String fileName, String[] logMessages)
    {
        try
        {
            File folder = new File(rootPath);
            if(!folder.exists())
            {
             folder.mkdir();
            }
            File file = new File(rootPath + "\\" + fileName + ".log");
            if(!file.exists())
            {
             file.createNewFile();
            }
            BufferedReader in = new BufferedReader(new FileReader(file));
            String str = "";
            String strToal = "";

            while ((str = in.readLine()) != null)
            {
                strToal += (str + enter);
            }
            for (int i=0; i < logMessages.length ; i++)
            {
               String logMessage = logMessages[i];
               strToal = strToal + (sdf.format(new Date()) + " " + logMessage + enter);
            }
            in.close();
            BufferedWriter out = new BufferedWriter(new FileWriter(file));
            out.write(strToal);
            out.close();

        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
    public static void main(String args[])
    {
     AndyLogger.log("bug223", "timeisjjja");
     String[] logMessages = {"111","222","333"};
     AndyLogger.log("bug223", logMessages);
    }

}

相关文章

  • JAVA 多线程编程之CountDownLatch使用详解

    JAVA 多线程编程之CountDownLatch使用详解

    当多个线程需要协调和同步执行任务时,Java中的CountDownLatch(倒计时门闩)是一个常用的工具类,本文将介绍 CountDownLatch 的基本原理、用法以及示例代码,需要的朋友可以参考下
    2023-05-05
  • springboot自定义starter方法及注解实例

    springboot自定义starter方法及注解实例

    这篇文章主要为大家介绍了springboot自定义starter方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • SpringSecurity中的表单认证详细解析

    SpringSecurity中的表单认证详细解析

    这篇文章主要介绍了SpringSecurity中的表单认证详细解析,在上一篇文章中,我们初步引入了 Spring Security,并使用其默认生效的 HTTP 基本认证保护 URL 资源,在本篇文章中我们使用表单认证来保护 URL 资源,需要的朋友可以参考下
    2023-12-12
  • Swagger使用和注释详解

    Swagger使用和注释详解

    Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务,这篇文章主要介绍了Swagger使用和注释介绍,需要的朋友可以参考下
    2024-05-05
  • SpringBoot自定义注解及AOP的开发和使用详解

    SpringBoot自定义注解及AOP的开发和使用详解

    在公司项目中,如果需要做一些公共的功能,如日志等,最好的方式是使用自定义注解,自定义注解可以实现我们对想要添加日志的方法上添加,这篇文章基于日志功能来讲讲自定义注解应该如何开发和使用,需要的朋友可以参考下
    2023-08-08
  • Java Thread多线程开发中Object类详细讲解

    Java Thread多线程开发中Object类详细讲解

    这篇文章主要介绍了Java Thread多线程开发中Object类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-03-03
  • springboot 增加过滤器方法操作示例

    springboot 增加过滤器方法操作示例

    这篇文章主要介绍了springboot 增加过滤器方法操作,结合实例形式分析了springboot过滤器配置、加载等相关操作技巧,需要的朋友可以参考下
    2019-12-12
  • SpringSecurity实现动态权限校验的过程

    SpringSecurity实现动态权限校验的过程

    Spring Security过滤器链中,AuthorizationFilter的authorizationManager是我们要找的组件,该组件的check方法已被弃用,推荐使用authorize方法,最终通过接口路径和权限进行校验,本文给大家介绍SpringSecurity实现动态权限校验的相关知识,感兴趣的朋友一起看看吧
    2025-02-02
  • Spring Cloud Hystrix原理与注意事项小结

    Spring Cloud Hystrix原理与注意事项小结

    本文介绍了Hystrix的基本概念、工作原理以及其在实际开发中的应用方式,通过对Hystrix的深入学习,开发者可以在分布式系统中实现精细的错误处理机制,并能够及时响应系统中的异常,避免服务的连锁崩溃,感兴趣的朋友一起看看吧
    2025-03-03
  • Java中i++与++i的区别和使用

    Java中i++与++i的区别和使用

    这篇文章主要介绍了Java中i++与++i的区别和使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02

最新评论