spring boot中统一异常处理

本文介绍了如何在Spring Boot应用中实现统一的异常处理。通过创建全局异常处理类并映射异常页面,确保异常信息安全、友好的返回。通常异常会从底层逐渐往上层抛出,最终由全局异常处理器捕获。为了返回JSON格式的错误信息,只需在现有代码基础上稍作调整。
摘要由CSDN通过智能技术生成

在前面的博客中,Spring Boot整合jpa,Shiro进行权限管理 异常都是直接返回到页面上,这样做既不安全,也不友好,所以在返回给页面之前,我们需要对异常信息进行统一的处理,该部分的处理思路和spring mvc的处理思路是一致的。

下面,我们来对前面的示例进行改造,从而能够支持统一的异常处理。

1、定义全局异常处理类

@ControllerAdvice
public class GlobalExceptionHandler {// 此处仅用作测试
	@ExceptionHandler(value = Exception.class)
	public ModelAndView defaultErrorHandler(HttpServletRequest req, Exception e) throws Exception {

		ModelAndView mav = new ModelAndView();
		if (e instanceof UnauthorizedException) {// 判断异常类型
			mav.addObject("exception", "无权访问!");// 根据异常类型,返回具体的展示信息
		} else {
			mav.addObject("exception", "系统错误,请联系管理员@chhliu!");
	
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值