美文网首页
java优雅的进行异常处理

java优雅的进行异常处理

作者: wanggs | 来源:发表于2020-08-27 15:06 被阅读0次

一、定义一个异常的枚举类

@Getter
@NoArgsConstructor
@AllArgsConstructor
public enum  ExceptionEnum {
    PRICE_CANNOT_BE_NULL(400, "价格不能为空"),
    PARAM_CANNOT_BE_NULL(400, "参数不能为空"),
    CATEGORY_NOT_FOUND(404, "商品分类没有找到"),
    SPEC_GROUP_NOT_FOUND(404, "商品规格组没有查到"),
    BRAND_SAVE_ERROR(500, "新增品牌失败"),
    GOODS_SAVE_ERROR(500, "新增商品失败"),
    BRAND_NOT_FOUND(404, "品牌没有找到"),
    UPLOAD_FILE_ERROR(500, "文件上传失败"),
    INVALID_FILE_TYPE(400, "无效文件类型"),
    SPEC_PARAM_NOT_FOUND(404,"商品规格参数不存在"),
    GOODS_NOT_FOUND(404,"商品不存在"),
    SPU_DETAIL_NOT_FOUND(404, "商品详情不存在"),
    GOODS_SKU_NOT_FOUND(404,"sku没有找到");
    private int code;
    private String msg;

}

二、定义一个异常的结果集

// 自定义异常处理.vo
@Data
public class ExceptionResult {
    private int status;
    private String message;
    private Long timestamp;

    public ExceptionResult(ExceptionEnum exceptionEnum) {
        this.status = exceptionEnum.getCode();
        this.message = exceptionEnum.getMsg();
        this.timestamp = System.currentTimeMillis();
    }
}

三、 自定义一个异常,继承RunTimeException,里面放着定义的枚举类

1.实例

// 自定义异常
@NoArgsConstructor
@AllArgsConstructor
@Getter
public class CarryExcepttion extends RuntimeException {
    private ExceptionEnum exceptionEnum;
}

 // 测试
 //      throw new CarryExcepttion(ExceptionEnum.BRAND_NOT_FOUND);



2.实例


@Getter
public class SellException extends RuntimeException {

    private Integer code;

    public SellException(ResultEnum resultEnum) {
        super(resultEnum.getMessage());

        this.code = resultEnum.getCode();
    }

    public SellException(Integer code, String message) {
        super(message);
        this.code = code;
    }
}
// 测试

//  throw new SellException(ResultEnum.ORDER_DETAIL_EMPTY);

四、创建一个通知,拦截异常

<font color=#999AAA >提示:这里可以添加要学的内容
例如:
1、 搭建 Java 开发环境
2、 掌握 Java 基本语法
3、 掌握条件语句
4、 掌握循环语句
<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1">

五、使用自定义的异常

  // 测试
        throw new CarryExcepttion(ExceptionEnum.BRAND_NOT_FOUND);

相关文章

  • java优雅的进行异常处理

    一、定义一个异常的枚举类 二、定义一个异常的结果集 三、 自定义一个异常,继承RunTimeException,里...

  • Exception

    Java 中 9 个处理 Exception 的最佳实践 Java 中的异常和处理详解 如何优雅的设计 Java ...

  • Java优雅的异常处理

    Java中出现报异常,会导致代码无法成功编译,影响后面代码的执行,所以我们要解决这些异常。 常用的异常的处理方式有...

  • 我抛了几个异常,领导却说我代码写得好

    前言 小时候写Java代码碰见异常要么全抛,要么全捕。没有优雅的处理过异常,自然也就谈不上利用Java优秀的异常处...

  • 优雅处理你的Java异常

    作者:叶知泉 来源:https://my.oschina.net/c5ms/blog/1827907 本文介绍 本...

  • 怎么优雅的处理Java异常?

    0 本文介绍 本文仅按照业务系统开发角度描述异常的一些处理看法.不涉及java的异常基础知识,可以自行查阅《Jav...

  • 如何优雅的处理异常(java)?

    Java中异常提供了一种识别及响应错误情况的一致性机制,有效地异常处理能使程序更加健壮、易于调试。异常之所以是一种...

  • Java-优雅的异常处理

    异常处理 1.异常的概念及异常体系 1.什么是Java中的异常 1. 代码正常运行不会出问题,但是遇到意外,参数变...

  • go 语言随记

    以前有人跟我聊起go与java,我说go语言没有很好的异常处理机制,不像java,java中可以对异常进行统一处理...

  • 利用Spring优雅处理Java异常

    如何解决业务开发中的异常情况 在我们的业务开发中,经常会碰到一些业务方面的异常情况,比如购买商品发现余额不足,用户...

网友评论

      本文标题:java优雅的进行异常处理

      本文链接:https://www.haomeiwen.com/subject/dkicsktx.html