原文来自:http://blog.csdn.net/nash603/article/details/6749914

Logger所对应的属性文件在安装jdk目录下的jre/lib/logging.properties 
logging.properties文件中的 
handlers= java.util.logging.ConsoleHandler  将日志内容输出到控制台
handlers= java.util.logging.FileHandler     将日志文件输出到文件中
handlers= java.util.logging.ConsoleHandler,java.util.logging.FileHandler 将日志内容同时输出到控制台和文件中

# Limit the message that are printed on the console to INFO and above.
java.util.logging.ConsoleHandler.level = INFO   //日志输出级别

java.util.logging.FileHandler.pattern = %h/java%u.log  为生成的输出文件名称指定一个模式。
模式由包括以下特殊组件的字符串组成,则运行时要替换这些组件:

  • "/" 本地路径名分隔符
  • "%t" 系统临时目录
  • "%h" "user.home" 系统属性的值
  • "%g" 区分循环日志的生成号
  • "%u" 解决冲突的惟一号码
  • "%%" 转换为单个百分数符号"%"

如果未指定 "%g" 字段,并且文件计数大于 1,那么生成号将被添加到所生成文件名末尾的小数点后面。

java.util.logging.FileHandler.limit = 50000   限制文件的大小,以字节为单位
java.util.logging.FileHandler.count = 1       指定有多少输出文件参与循环(默认为 1)。
java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter      指定要使用的 Formatter 类的名称(默认为java.util.logging.XMLFormatter)。 另外一个是:java.util.logging.SimpleFormatter。XMLFormatter是以xml样式输出,SimpleFormatter是以普通样式输出。
java.util.logging.FileHandler.append 指定是否应该将 FileHandler 追加到任何现有文件上(默认为 false)。

以下是实现日志输出的一个例子

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.ConsoleHandler;
import java.util.logging.FileHandler;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.logging.SimpleFormatter; /**
* 日志输出到登陆系统用户所在的根目录的邮政储蓄日志的文件夹下,
* 并且根据系统日期命名日志文件
* @author wang
*
*/
public class LoggerUtil { /** 存放的文件夹 **/
private static String file_name = "邮政储蓄日志"; /**
* 得到要记录的日志的路径及文件名称
* @return
*/
private static String getLogName() {
StringBuffer logPath = new StringBuffer();
logPath.append(System.getProperty("user.home"));
logPath.append("\\"+file_name);
File file = new File(logPath.toString());
if (!file.exists())
file.mkdir(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
logPath.append("\\"+sdf.format(new Date())+".log"); return logPath.toString();
} /**
* 配置Logger对象输出日志文件路径
* @param logger
* @throws SecurityException
* @throws IOException
*/
public static void setLogingProperties(Logger logger) throws SecurityException, IOException {
setLogingProperties(logger,Level.ALL);
} /**
* 配置Logger对象输出日志文件路径
* @param logger
* @param level 在日志文件中输出level级别以上的信息
* @throws SecurityException
* @throws IOException
*/
public static void setLogingProperties(Logger logger,Level level) {
FileHandler fh;
try {
fh = new FileHandler(getLogName(),true);
logger.addHandler(fh);//日志输出文件
//logger.setLevel(level);
fh.setFormatter(new SimpleFormatter());//输出格式
//logger.addHandler(new ConsoleHandler());//输出到控制台
} catch (SecurityException e) {
logger.log(Level.SEVERE, "安全性错误", e);
} catch (IOException e) {
logger.log(Level.SEVERE,"读取文件日志错误", e);
}
} public static void main(String [] args) {
Logger logger = Logger.getLogger("sgg");
try {
LoggerUtil.setLogingProperties(logger);
logger.log(Level.INFO, "ddddd");
logger.log(Level.INFO, "eeeeee");
logger.log(Level.INFO, "ffffff");
logger.log(Level.INFO, "gggggg");
logger.log(Level.INFO, "hhhhhh");
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}

java Logger 的使用与配置的更多相关文章

  1. 从零开始学 Java - Spring 集成 Memcached 缓存配置(二)

    Memcached 客户端选择 上一篇文章 从零开始学 Java - Spring 集成 Memcached 缓存配置(一)中我们讲到这篇要谈客户端的选择,在 Java 中一般常用的有三个: Memc ...

  2. Java中多环境Logback配置与ELK日志发送

    Java中多环境Logback配置与ELK日志发送   一.项目基于SpringBoot实现,引入SpringBoot相关库后,本文还要讲上传到ELK的Logstash,所以需要在pom.xml中加入 ...

  3. 两种“新型”的javaweb后门(jspx和Java Logger)

    利用这个可以突破st2下   强制jsp跳转login.jsp 利用jspx解决jsp后缀被限制拿shell - Hack Blog | 黑客博客http://www.hackblog.cn/post ...

  4. Disabling default console handler in Java Logger by codes

    The open source packages usu. relies on log4j or Java Logger to print logs, by default the console h ...

  5. 安装java后的环境变量配置

    安装java后的环境变量配置- 自定义安装目录可能会带来一些烦恼,配置环境变量可能很难找对目录,所以倒不如干脆就用默认的安装目录,记住它,安装完java之后去到那个路径把路径复制, 然后进行环境变量配 ...

  6. Java环境的安装与配置

    Java环境的安装与配置 环境:Java8,win10 推荐oracle官网oracle官网https://www.oracle.com/index.html下载JDK进行安装 选择自己需要的版本下载 ...

  7. Windows下Java开发环境安装与配置

    1. 前往Oracle网站下载JDK程序并安装. http://www.oracle.com/technetwork/java/javase/downloads/index.html 目前最新的版本为 ...

  8. Java开发机器上的配置及zookeeper配置

    Java开发机器上的配置及zookeeper配置 /etc/profile 文件的后面加入下面的内容: # jdk, zookeeper, kafka, ant, maven export APACH ...

  9. 第一节:学会Java前提-手把手教你配置JDK环境变量

    前言 大家好,今天写一遍学会Java前提-手把手教你配置JDK环境变量的概述,希望你们喜欢 下载地址 下载jdk,和eclipse就比较简单了,提供JDK 9 地址: http://www.oracl ...

随机推荐

  1. 【vue iview】项目 win10 放在C盘 经常npm install不成功,就是因为 权限问题,把代码目录放到D盘就没事了。

    [vue iview]项目 win10 放在C盘 经常npm install不成功,就是因为 权限问题,把代码目录放到D盘就没事了.

  2. SQL学习总结笔记

    SQL语句的效率不仅是sql语句的设计还有一些其他的原因比如网络 .是否有视图.是否有索引等等.这里主要描述的是我个人对于sql设计方面优化的一些见解: 首先要说明一下的是数据库SQL解析顺序: (1 ...

  3. 【原】基于matlab的蓝色车牌定位与识别---绪论

    本着对车牌比较感兴趣,自己在课余时间摸索关于车牌的定位与识别,现将自己所做的一些内容整理下,也方便和大家交流. 考虑到车牌的定位涉及到许多外界的因素,因此有必要对车牌照的获取条件进行一些限定: 一.大 ...

  4. sphinx中文入门指南 (转自sphinx中文站)

    Sphinx中文入门指南 wuhuiming<blvming在gmail.com>,转载请注明来源和作者 最后修改:2010年1月23日 1.简介 1.1.Sphinx是什么 1.2.Sp ...

  5. mysql主主复制汇总整理

    mysql主主复制汇总整理 一.Mysql主主.主从复制主要思路: 1.mysql复制实质: 就是其他的MySQL数据库服务器将这个数据变更的二进制日志在本机上再执行一遍,因此非常重要的一点是mysq ...

  6. python入门:输出1-10以内除去7的所有数(简)

    #!/usr/bin/env python # -*- coding:utf-8 -*- #输出1-10以内除去7的所有数(简) """ 给变量kaishi赋值1,whi ...

  7. linux文件属性描述(inode,block)

    1.ls   -lhi 文字解释: 第一列:inode索引节点编号(人的身份证,全国唯一) 系统读取文件时首先通过文件名找到inode,然后才能读取到文件内容. 第二列:文件类型及权限(共10个字符, ...

  8. MySQL查询时,查询结果如何按照where in数组排序

    MySQL查询时,查询结果如何按照where in数组排序 在查询中,MySQL默认是order by id asc排序的,但有时候需要按照where in 的数组顺序排序,比如where in的id ...

  9. Survey lists 10 most innovative cities

    From China Daily Beijing and Shanghai are among the 10 most innovative cities in the world, based on ...

  10. Python学习笔记:os模块和sys模块

    os模块 os.path.driname(path):返回当前路径的上一级路径字符串. os.path.basename(path):返回当前路径的目录名(文件夹名)或文件名(全称). os.path ...