Java-- 异常与记录日志
可以使用java.util.logging工具将输出记录在日志中。记录日志的的功能还是很简单的,下面直接铺出代码:
1 package com.exceptions; 2 3 import java.io.*; 4 import java.util.logging.Logger; 5 6 class LoggingException extends Exception{ 7 private static Logger logger = 8 Logger.getLogger("LoggeringException"); 9 public LoggingException(){ 10 StringWriter trace = new StringWriter(); 11 printStackTrace(new PrintWriter(trace)); 12 logger.severe(trace.toString()); 13 } 14 } 15 16 public class LoggingExceptions { 17 public static void main(String [] args) 18 { 19 try{ 20 throw new LoggingException(); 21 }catch(LoggingException e){ 22 System.err.println("Caught"+ e); 23 } 24 try{ 25 throw new LoggingException(); 26 }catch(LoggingException e){ 27 System.out.println("Caught"+ e); 28 } 29 } 30 }
结果:
1 六月 22, 2014 9:32:41 下午 com.exceptions.LoggingException <init> 2 严重: com.exceptions.LoggingException 3 at com.exceptions.LoggingExceptions.main(LoggingExceptions.java:20) 4 5 Caughtcom.exceptions.LoggingException 6 六月 22, 2014 9:32:41 下午 com.exceptions.LoggingException <init> 7 严重: com.exceptions.LoggingException 8 at com.exceptions.LoggingExceptions.main(LoggingExceptions.java:25) 9 10 Caughtcom.exceptions.LoggingException
尽管LoggingException将所有日志的基础设施都构建在异常自身中,使得它所使用的方式非常方便,并因此不需要客户端程序员的干预就可以自动运行,但是更常见的情形是我们需要捕获和记录其他人编写的异常,因此我们必须在异常处理程序中生成日志消息:
1 /** 2 * 3 */ 4 package com.exceptions; 5 6 import java.util.logging.Logger; 7 import java.io.*; 8 9 public class LoggingExceptions2 { 10 11 /** 12 * @param args 13 */ 14 private static Logger logger = 15 Logger.getLogger("LoggingExceptions"); 16 static void logException(Exception e){ 17 StringWriter trace = new StringWriter(); 18 e.printStackTrace(new PrintWriter(trace)); 19 logger.severe(trace.toString()); 20 } 21 public static void main(String[] args) { 22 // TODO Auto-generated method stub 23 try{ 24 throw new NullPointerException(); 25 }catch(NullPointerException e){ 26 logException(e); 27 } 28 } 29 30 }
结果:
六月 22, 2014 9:47:03 下午 com.exceptions.LoggingExceptions2 logException
严重: java.lang.NullPointerException
at com.exceptions.LoggingExceptions2.main(LoggingExceptions2.java:24)
转载于:https://www.cnblogs.com/fxyfirst/p/3803102.html
Java-- 异常与记录日志相关推荐
- java的异常与记录日志
今天在<java编程思想>一书中看到了异常与记录日志,发现学会将异常记录进日志中还是很有必要的,以下是书中的例子: 1 import java.io.PrintWriter; 2 impo ...
- java异常对象引用变量_Java面向对象编程-异常处理
第九章 异常处理 异常情况会改变正常的流程,导致恶劣的后果,为了减少损失,应该事先充分预料所有可能出现的异常,然后采取以下措施: 首先考虑避免异常,彻底杜绝异常的发生:如果不能完全避免,则尽可能地减少 ...
- java 异常_Java 进阶之异常处理
本文的主要内容分为 Java 异常的定义.Java 异常的处理.JVM 基础知识(异常表.JVM 指令分类和操作数栈)及深入剖析 try-catch-finally 四部分(图解形式).在深入剖析 t ...
- 深入浅出详细介绍Java异常,让你茅塞顿开般的感觉
零基础学习之Java异常 概述 基本介绍 Error 代码示例 Exception 代码示例 异常的处理 throw 代码示例 throws 代码示例 try-catch 代码示例 finally块 ...
- 最最最全面的Java异常面试及解答
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | ThinkWon 来源 | blog.csdn ...
- java异常错误的是,java 异常 错误处理
场景:thinking in java 学习笔记 12 通过错误处理异常 thinking in java 学习笔记 12 通过异常处理错误 第十二章 通过异常处理错误 在以前平时的编程中没有真正意思 ...
- 高效的java异常(Effective Java Exceptions)
摘要 Java开发人员可以做出的最重要的架构决策之一是如何使用Java异常模型.Java异常一直是社区争论的主题. 有些人认为Java语言中的checked(受检)异常是一个失败的实验. 本文认为,错 ...
- java 中的finally你知多少_「JAVA」详述Java异常体系,处理异常时配上finally效果更佳...
什么是异常 从事Java开发的小伙伴对于"异常"应该不陌生,因为每天都会遇到不少异常,或捕获,或抛出.那究竟什么是异常?异常即非正常的,不同于平常.一般化的情况.在平时生活中,医生 ...
- 【SE】:Java异常、由浅入深、由原理入面试题
Java异常架构与关键字 异常处理机制 捕获异常:try-catch-finally try-catch的使用规则: try-catch-finally中finally的使用: 声明异常:throws ...
- 两万字详解Java异常,面试再也不怕被问到!
点击关注公众号,利用碎片时间学习 Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提 ...
最新文章
- 如何在TVM上集成Codegen(上)
- 个人知识管理系统 mysql_个人知识管理系统Version1.0开发记录(04)
- 不做“浮冰”,深挖AI技术和场景
- mysql insert 1062_一则 insert 报 ERROR 1062 (23000): Duplicate entry 'xxx' for key,请帮忙看看...
- 06-Java 本地文件操作
- deepin 安装cuda 编译 ffmpeg
- Multiprocessing Manager
- Hibernate POJO在序列化(JSON)时遇到的若干问题
- 浅谈css样式(border、background、table)
- Appium - WebView測试(Android)
- highcharts饼图
- jooq spring mysql_【中级篇】详细讲解使用SpringBoot + Jooq整合(一)
- 地图 显示 动态轨迹_野外探路必备神器——奥维互动地图浏览器
- 一名优秀的数据分析师应该具备这10项关键技能
- python拦截广告弹窗_电脑总是有弹窗广告,真的烦人,一招教你解决!
- 激光投影仪和大屏液晶电视有哪些优缺点?二者应该怎么选?
- HTML如何制作音乐网站(如何搭建个人音乐网页)
- Mac 下 移动硬盘只读解决方案
- “希希敬敬对”团队作业——敏捷冲刺7
- div标签,h标签,p标签,hr标签