练习java文档System.Logger

练习java文档System.Logger,第1张

练习java文档System.Logger

System.Logger练习
内部类
练习java文档System.Logger.Level
方法
getName() 其实就是System.getLogger(“abc”) 里的abc
isLoggable() 检查某个等级是否不会被过滤
log(Level,Supplier) Supplier只要求他是一个函数式接口,返回的是一个String就行了,甚至只要是一个可以toString()的对象,就好了,但是返回的还是要是一个字符串

import java.util.logging.*;
import java.io.*;
import java.util.*;
public class Test
{
	public static void main(String[] args) throws IOException
	{
		//方法
		System.Logger logger2 = System.getLogger("aa");
		logger2.log(System.Logger.Level.WARNING, DiagnosisMessages::systemHealthStatus);
	}
}	
class DiagnosisMessages
{
	static String systemHealthStatus()
	{
		System.out.println("被调用了");
		return new ArrayList(Arrays.asList(1,2,3)).toString();
	}
}

log(Level,String,Throwable)
log(Level,Supplier,Throwable)
log(Level,ResourceBundle,String,Throwable)

import java.util.logging.*;
import java.io.*;
import java.util.*;
public class Test
{
	public static void main(String[] args) throws IOException
	{
		System.Logger logger5 = System.getLogger("test");
		logger5.log(System.Logger.Level.ERROR,"我爱可爱的妹纸",new Throwable("对的"));
		logger5.log(System.Logger.Level.ERROR,"我喜欢另一个妹纸",new Throwable("也对"));
		logger5.log(System.Logger.Level.ERROR,Supp::out,new Throwable("啊,大海"));
		ResourceBundle rb = ResourceBundle.getBundle("aaa");
		logger5.log(System.Logger.Level.ERROR,rb,"water",new Throwable("水~"));
	}
}	
class DiagnosisMessages
{
	static String systemHealthStatus()
	{
		System.out.println("被调用了");
		return new ArrayList(Arrays.asList(1,2,3)).toString();
	}
}
class Supp
{
	static String out()
	{
		return "Supplier.out";
	}
}

aaa_zh_CN.properties

water=你都是水!
import java.util.*;
import java.util.logging.*;
import static java.lang.System.Logger.Level.*;
public class Test
{
	public static void main(String[] args) throws Exception,Throwable
	{
		//Logger书上的练习
		//获取System.Logger对象
		System.Logger logger = System.getLogger("fkjava");
		//设置系统日志级别(FINE对应DEBUG)
		Logger.getLogger("fkjava").setLevel(Level.OFF);
		//设置使用a.xml保存日志记录
		Logger.getLogger("fkjava").addHandler(new FileHandler("a.xml"));
		logger.log(System.Logger.Level.DEBUG,"debug信息");
		logger.log(System.Logger.Level.INFO,"info信息");
		logger.log(System.Logger.Level.ERROR,"error信息");

		
		System.Logger logger2 = System.getLogger("logger2");
		Logger.getLogger("logger2").setLevel(Level.OFF);
		Logger.getLogger("logger2").addHandler(new FileHandler("b.xml"));
		logger2.log(System.Logger.Level.ERROR,"这是新的error信息");	
		logger2.log(System.Logger.Level.DEBUG,"这是新的debug信息");
		logger2.log(System.Logger.Level.ERROR,"发生了严重的错误");
		logger2.log(System.Logger.Level.INFO,"来自外星文明的信息。");
		//自己练习一遍
		System.Logger logger3 = System.getLogger("abc");
		Logger.getLogger("abc").setLevel(Level.INFO);
		Logger.getLogger("abc").addHandler(new FileHandler("c.xml"));
		logger3.log(System.Logger.Level.ERROR,"abc发生了错误");
		
		System.Logger logger4 = System.getLogger("na");
		Logger.getLogger("na").setLevel(Level.FINE);
		Logger.getLogger("na").addHandler(new FileHandler("d.xml"));
		System.out.println(logger4.getName());
		System.out.println(logger4.isLoggable(System.Logger.Level.DEBUG));
		System.out.println(logger4.isLoggable(System.Logger.Level.ERROR));
		System.out.println(logger4.isLoggable(System.Logger.Level.ALL));

		logger4.log(System.Logger.Level.WARNING,new ArrayList<>(Arrays.asList(1,23,4)));
		logger4.log(System.Logger.Level.ERROR,new ArrayList<>(Arrays.asList(5,6,7)));
		logger4.log(System.Logger.Level.INFO,new ArrayList(Arrays.asList("我","你","他")));	
		logger4.log(System.Logger.Level.INFO,new ArrayList(Arrays.asList("流氓",32)));
		logger4.log(INFO,"我是杀生丸");
		logger4.log(INFO,"我爱{0}","美女");

		ResourceBundle bundle = ResourceBundle.getBundle("log");
		System.out.println(bundle.getString("我爱美女"));
		logger4.log(INFO,bundle,"我爱美女","美女");
	}
}	

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5696645.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存