Exception(异常处理)

一、概念

 

  

 

二、异常的处理在Spring MVC 中有四种方式进行处理

  •   使用默认的DefaultHandlerExceptionResolver 异常处理类
  •   编程式异常处理
  •   自定义HandlerExceptionResolver(全局的处理)
  •   使用注解的方式@ExceptionHandler/@ControllerAdvice。。。

 

1、在Spring MVC中如果你抛出异常,自己在后面的方法中没有处理,那么在Spring容器中会有一个DefaultHandlerExceptionResolver异常来处理

 

异常的处理集中。

不好做到精确的控制。

2、编程式异常处理:

 编程式异常处理的好处是:能精确的捕获到异常,并及时的做出对应的响应;

 缺点:如果方法变多了,那么这种写法不便于维护;捕获的异常变多了,代码的量会逐渐增加,重复的代码会出现越来越多;

package com.wgc.jsonp.controller;

import com.wgc.jsonp.entity.TestUser;
import com.wgc.jsonp.exception.DBException;
import com.wgc.jsonp.exception.DataVlidateException;
import com.wgc.jsonp.service.TestUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class TestUserController {
    
    @Autowired
    private TestUserService service;
@RequestMapping(
"/add") @ResponseBody /*去掉这个注解就是返回页面*/ public String add(TestUser testUser) { try { service.addUser(testUser); } catch (DBException e) { return "返回到指定的页面"; } catch (DataVlidateException e) { return "返回到原本添加的页面"; } catch (Exception e) { return "未知的异常,返回到指定的页面"; } return "返回到添加成功后的页面"; } }

 

3、自定义HandlerExceptionResolver(全局的处理)

 

转载于:https://www.cnblogs.com/YouAreABug/p/10040945.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值