zoukankan      html  css  js  c++  java
  • 异常处理

    1、页面跳转形式

    首先我们在Controller层定义一个error的类,并写一个普通的抛出异常方法 输入图片说明

    正常来说页面会显示报错

    输入图片说明

    这时我们需要定义一个异常的全局捕获类MyselfExceptionHandler 输入图片说明

    我们直接以ModelAndView的形式返回即可。设置跳转页面error 输入图片说明

    这样,在发生异常的时候,用户就不会看到奇怪的页面 输入图片说明

    而是由我们自己定义的错误页面(项目团队可以自定义一些好看的内容及客服联系方式等)

    2、ajax形式

    当然除了web形式的错误,还有ajax请求报错,我们也需要做全局异常的捕获。 输入图片说明

    我定义了一个页面,引入了一个ajax请求的自定义js 输入图片说明

    方法会向后台接口做请求 输入图片说明

    而请求的这个方法正好有一个自定义的常规异常。这时我们的全局异常捕获类就会进行捕获,并返回相关的信息 输入图片说明

    页面的js就会根据返回的状态码进行判断,不会导致请求方法一直loading。

    3、统一返回异常的形式

    当然上面两种是针对性的解决单一问题,我们还需要综合性的解决以上的异常问题,同时兼容ajax与web异常。

    那么其实和很多实现方式一样就是做判断,在捕获异常后 ,判断是什么类型的针对性处理 输入图片说明

    这里判断是哪种形式的异常分别处理 输入图片说明

    ajax的请求有固定的写法,就是判断请求头的内容

    之后就可以愉快的处理web或ajax的异常啦。

  • 相关阅读:
    git命令
    Java开发中的23种设计模式详解
    Linux下简单基本操作【备查】
    微信|公众平台开发者平台
    MyEclipse老是弹出problem occurred窗口
    spring 工具包怎么下载
    MyEclipse8.6启动后提示内存不足的解决方案(亲测,完美解决)
    bzoj2440,luoguP4318 完全平方数
    hdu5528
    CF1076E Vasya and a Tree
  • 原文地址:https://www.cnblogs.com/UncleCatMySelf/p/9250979.html
Copyright © 2011-2022 走看看