《果然新鲜》电商项目(23)- 全局异常捕获
Posted IT老刘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《果然新鲜》电商项目(23)- 全局异常捕获相关的知识,希望对你有一定的参考价值。
文章目录
引言
在上一节《果然新鲜电商项目(22)- DTO接口细分》,主要讲解如何使用DTO来细分接口中的参数,并提高接口的安全性。
本文主要讲解全局异常捕获。
1.定义全局异常捕获类
1.在通用模块(guoranxinxian-shop-common-core
)增加全局捕获异常捕获类:
package com.guoranxinxian.error;
import com.alibaba.fastjson.JSONObject;
import com.guoranxinxian.api.BaseResponse;
import com.guoranxinxian.entity.BaseApiService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* description: 全局捕获异常
*/
@ControllerAdvice
@Slf4j
public class GlobalExceptionHandler extends BaseApiService<JSONObject>
@ExceptionHandler(RuntimeException.class)
@ResponseBody
public BaseResponse<JSONObject> exceptionHandler(Exception e)
log.info("###全局捕获异常###,error:", e);
return setResultError("系统错误!");
2.移动会员启动类(AppMember
)以及微信启动类(AppWeixin
)到com.guoranxinxian
这个包里,不然捕获不了异常
3.自定义抛异常,在existMobile
接口抛出异常:
2. 测试
启动会员微服务,使用Swagger
访问existMobile
接口(根据手机号码查询是否已经存在):
可以看到进入了断点:
总结
本文主要讲解了全局异常捕获的方式。
以上是关于《果然新鲜》电商项目(23)- 全局异常捕获的主要内容,如果未能解决你的问题,请参考以下文章