文章目录
异常消息处理
模拟案例
编写UserController2.java
save方法
postman测试
小结
我们需要对异常数据做一个统一的处理,不然前端无法处理
优化方案
编写切面工具
package com.taotao.controller.utils;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;
/**
* create by 刘鸿涛
* 2022/5/8 12:58
*/
@SuppressWarnings({
"all"})
//作为springmvc的异常处理器
@ControllerAdvice
@RestControllerAdvice
public class ProjectExceptionAdvice {
//拦截所有的异常信息
@ExceptionHandler
public Result doExceptionAdvice(Exception ex){
//记录日志
//通知运维
//通知开发
ex.printStackTrace();
return new Result("服务器故障,请稍后再试");
}
}
给Result.java编写一个构造方法,用于返回数据
private String msg;
public Result(String msg){
this.flag = false;
this.msg = msg;
}
postman测试
完成前端页面异常显示
测试成功
优化方案2
改前端页面
不管成功还是失败我们都返回res.data.msg,逻辑我们都写在controller类里
编写UserController2.java
如果flag为true我们显示“添加成功”,否则显示“添加失败”
如果异常了(鬼鬼.equals(user.getUsername()),就报异常;
记得添加一个构造方法
测试成功
运行异常成功
姓名等于“鬼鬼”,异常