📄 80546cc9408b001c1ef4f4e88aa799ae
字号:
package main.cn.edu.nju.software.sd.cll;
import java.io.*;
import java.util.*;
public class Configuration {
public static String path = readClasspath();
public static Properties configuration= new Properties();
/**读取工程的classpath,获得配置文件的路径*/
public static String readClasspath()
{
String p = System.getProperty("java.class.path");
String classpath = null;
int semi = p.indexOf(";");
if(semi==-1)
{
classpath = p+"/loggerConfiguration.txt";
}
else
{
classpath = p.substring(0, semi) + "/loggerConfiguration.txt";
}
return classpath;
}
/**配置root logger*/
public static void initRootLogger(Logger rootLogger){
try
{
configuration.load(new FileInputStream(path));
configLevel(rootLogger);
configDestination(rootLogger);
configFormat(rootLogger);
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void config(Logger logger) {
try {
configuration.load(new FileInputStream(path));
configLevel(logger);
configDestination(logger);
configFormat(logger);
}
catch(Exception e) {
e.printStackTrace();
}
}
/**配置logger的level*/
public static void configLevel(Logger logger)
{
String levelstr = configuration.getProperty(logger.getName());
if(levelstr==null)
{
logger.setLevel(null, true);
}
else
{
Level l = Level.toLevel(levelstr);
logger.setLevel(l, false);
}
}
/**从配置文件中读取信息配置format*/
public static void configFormat(Logger logger)
{
String formatstr = configuration.getProperty(logger.getName()+".format");
if(formatstr==null)
{
logger.setFormat(null, true);
}
else
{
Format f = new Format(formatstr);
logger.setFormat(f, false);
}
}
/**从配置文件中读取信息配置destination*/
public static void configDestination(Logger logger)
{
String desStr = configuration.getProperty(logger.getName()+".destination");
if(desStr==null)
{
logger.addHandler(null, true);
}
else
{
String[] des = desStr.split(",");
for(int i=0;i<des.length;i++)
{
if(des[i].equalsIgnoreCase("CONSOLE"))
{
logger.addHandler(new ConsoleHandler(), false);
}
else if(des[i].equalsIgnoreCase("FILE"))
{
String files = configuration.getProperty(logger.getName()+".destination.file");
logger.addHandler(new FileHandler(files), false);
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -