• JAVA异常基本知识及异常在Spring框架中的整体解决方案


    异常的顶级父类是Throwable,下面有两个子类Exception和Error。

    Error错误一般是虚拟机相关的问题,如系统崩溃,虚拟机错误等,应用程序无法处理,直接导致应用程序运行结束。

    Exception是我们需要处理的异常。

    Exception又分为Checked异常和Runtime异常。

    所有RuntimeException类及其子类都是Runtime异常。其他的为Checked异常。

    Checked异常必须显示处理,如果没有处理会发生编译错误。

    RunTime和Checked的处理方式有两种:

    1. Throw

    2. Catch

    两者可以同时使用,catch之后throw新的Exception


    自定义异常类

    public class AuctionException extends Exception{
        
        public AuctionException(){}
        public AuctionException(String msg){ 
               super(msg);
        }    
    }

    在Spring中对异常的处理,利用AOP集中处理

    我们来看几位博友的文章,这几篇博文推荐阅读。

    http://blog.csdn.net/he90227/article/details/46309297

    http://www.cnblogs.com/chenpi/p/6117090.html

    http://blog.csdn.net/ufo2910628/article/details/40399539

    http://www.cnblogs.com/xd502djj/archive/2012/09/24/2700490.html

     总结来讲,主要有三种集中处理的方法

    (1)使用Spring MVC提供的简单异常处理器SimpleMappingExceptionResolver; 
    (2)实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器; 
    (3)使用@ExceptionHandler注解实现异常处理; 

    推荐采用最后一种。

    http://www.cnblogs.com/chenpi/p/6117090.html中做了详细介绍。


    总结起来,原则是用自定义的业务异常包装底层原生异常,然后进行集中处理。

  • 相关阅读:
    Yahoo军规的学习
    从github上拉取代码速度慢的解决方案
    hosts文件介绍
    Windows系统下用nginx服务器部署页面
    前端开发面试题
    IDEA中maven无法拉下依赖问题的解决
    利用补丁永久破解IDEA
    OC项目中常用第三方库和框架介绍
    [暑假集训]开训复健练习赛 G
    [暑假集训]开训复健练习赛 D
  • 原文地址:https://www.cnblogs.com/xdlaoliu/p/6854768.html
Copyright © 2020-2023  润新知