异常
使用异常,让你的程序
(1)、写出“现代”的代码
(2)、结构更加清晰
(3)、错误更容易定位
(4)、用户体验更好
(5)、你的模块更加易用和稳定
(6)、你还需要什么呢?
详见:《使用.NET异常机制》
1、每一个系统都要精心设计自己的异常体系结构,例如下图
ELPSysException是系统异常,一般不显示给用户看,主要作用是对check异常的包装。
ELPBizException是所有业务异常的基类,出现这种异常时可以告知用户,可以扩展特定的子异常类。
2、spring mvc在controller层提供了统一的异常处理接口
public class ControllerExceptionResolver implements HandlerExceptionResolver { }
<bean class="com.iflytek.edu.tlsys.web.util.ControllerExceptionResolver"></bean>
3、如果方法调用不经过controller,也可以使用spring的aop机制来进行异常处理
@Aspect public class ExceptionHandleAspect{ /** * 日志 */ private static Logger logger = Logger.getLogger(ExceptionHandleAspect.class); /** * ThriftService实现中的公有方法为切入点。 */ @Pointcut("execution(public * com.iflytek.edu.tlsys.tservice..impl.*Impl.*(..))") public void defaultPointcut(){ } /** * ThriftService实现跌的方法调用出现异常。 * @param ex 异常 * @throws ThrTLSysException 系统异常 * @throws ThrTLBizException 业务异常 */ @AfterThrowing(pointcut="defaultPointcut()",throwing="ex") public void afterThrowing(Throwable ex) throws ThrTLSysException,ThrTLBizException{ logger.error(ex.getMessage(),ex); if(ex instanceof ELPBizException){ throw new ThrTLBizException(ex.getMessage()); }else{ throw new ThrTLSysException(ex.getMessage()); } } }
<aop:aspectj-autoproxy/> <bean class="com.iflytek.edu.tlsys.tservice.ExceptionHandleAspect"/>
日志
系统出现异常时,最常用的处理方式,便是记日志。比较常用的日志工具有log4j、logback。
详见: http://www.cnblogs.com/jenry/archive/2007/04/10/706636.html
搜索关键字:log4j配置
相关推荐
在Spring框架中,统一异常处理和日志管理是提高代码可维护性和系统稳定性的重要实践。通过对日志和异常进行集中式处理,可以更好地追踪和分析系统中的问题,同时避免了在每个方法中分散的异常捕获和日志记录代码。本...
#### 一、异常与日志的作用 ##### 1.1 异常的作用 Java异常机制是一种重要的编程特性,它允许程序员识别和处理程序执行过程中可能发生的错误状况。根据是否需要直接反馈给用户,异常可以分为两大类: 1. **系统...
"Android异常日志保存"这个Demo提供了一个实用的方法,将应用程序运行时的错误日志保存到设备的外部存储(SD卡)上,以便于开发者进行测试和调试。下面我们将详细探讨这一技术。 1. **Android异常处理基础** 在...
- **异常日志**:记录程序运行过程中发生的异常信息。 - **业务日志**:记录业务操作细节,如用户登录、操作记录等。 ##### 使用log4j - **安装**:首先需要下载log4j的jar文件。可以在Apache官方网站上找到log4j的...
### C#异常插入日志文件知识点详解 #### 一、知识点概述 在软件开发过程中,异常处理是非常重要的一个环节。良好的异常处理机制不仅能提高程序的健壮性,还能帮助开发者快速定位问题。本文将详细介绍如何在C#中...
在Android开发过程中,异常日志捕获是至关重要的一个环节,它可以帮助开发者追踪并解决程序运行时出现的问题。本文将详细讲解如何在Android系统中进行异常日志的捕获、记录以及分析,以便优化和调试应用程序。 首先...
在实际应用中,异常捕获与日志记录结合使用,可以极大地提高问题定位的效率。例如,当程序出现异常时,捕获的异常信息会被记录到日志中,开发者可以通过查看日志来了解错误发生的具体位置和原因,从而快速修复问题。...
在IT行业中,异常日志工具是开发者不可或缺的辅助工具,特别是在使用C#编程语言进行软件开发时。异常日志能够帮助我们追踪、诊断和解决程序运行时遇到的问题,提高软件的稳定性和可靠性。本文将详细讲解如何在C#中...
因此,优化异常日志的打印内容显得尤为重要。 首先,理解Logback的日志级别是减少异常日志打印的关键。Logback支持以下五级日志级别:OFF、ERROR、WARN、INFO、DEBUG和TRACE。默认情况下,只有INFO及以上的级别会被...
6. **日志聚合**:与日志收集工具(如ELK Stack:Elasticsearch、Logstash、Kibana)集成,实现日志的集中管理和分析。 在开发过程中,合理使用日志框架可以帮助我们提高代码的可维护性,减少线上问题的排查时间。...
在Android应用开发中,处理崩溃异常和记录日志是至关重要的环节,它们有助于开发者诊断和修复应用程序中的问题,提升用户体验。下面将详细讲解如何在Android中有效地进行异常处理和日志记录。 一、异常处理 1. **...
在Android开发中,异常捕捉和日志文件保存是至关重要的技术环节,它们有助于开发者调试应用、定位问题以及优化用户体验。本文将深入探讨Android系统中的异常处理机制和日志记录功能,以及如何有效地保存日志文件。 ...
系统core和java虚拟机异常退出日志设置 系统core和java虚拟机异常退出日志设置是系统管理员和开发者需要了解的重要知识点。系统核心崩溃日志和Java虚拟机崩溃日志都是非常重要的日志文件,它们可以帮助我们 debug ...
在VB6.0编程环境中,动态生成控件和异常处理日志是两个关键的技术点,它们对于提升程序的灵活性和可维护性具有重要意义。本文将深入探讨这两个主题,并提供实践指导。 首先,让我们来理解动态生成控件的概念。在VB...
本篇主要介绍如何实现一个全局的异常处理机制,以便将未处理的异常日志保存到本地文件,并在后续开发中将这些日志提交至服务器进行分析。 首先,我们需要创建一个`ExceptionHandler`类,这个类将会作为全局的错误...
基于机器学习的Web日志统计分析与异常检测工具python源码+项目说明.zip 【资源功能介绍】 命令行下的Web日志审计工具,旨在帮助使用者能够在终端上快速得进行Web日志审计和排查,包含了日志审计、统计的终端图形化和...
8. **异常匹配原则**:捕获的异常应与抛出的异常完全匹配或为抛出异常的父类。否则,可能会导致意外的处理逻辑。 9. **返回值可能为null的注释**:允许方法返回null,但需在注释中明确指出可能返回null的情况,提醒...
### 基于日志的异常检测技术综述 #### 引言 随着现代信息技术的飞速发展,各种系统及应用程序在运行过程中会产生大量的日志数据。这些日志包含了丰富的系统活动信息,对于理解系统行为、诊断问题以及预测未来趋势...
在开发Web应用程序时,异常处理和日志记录是至关重要的环节。MVC(Model-View-Controller)架构模式被广泛应用于构建动态网站,因为它能够清晰地分离业务逻辑、数据模型和用户界面。在这个主题中,我们将深入探讨...