• 关于java运行中抛出异常的几种写法


    1.

    @Override
    public PageInfo> selectPage(Integer page, Integer size) {
        PageHelper.startPage(page,size);
       List> list= dictMapper.selectPage1();
       if (list.size()>0){
           throw new IllegalArgumentException("请输入正确代码表,要求表名前缀是:"+"666"+"、");
               //throw new GuliException(20001,"哈哈哈哈");
    
       }
       return new PageInfo<>(list);
    }

    1.1postman运行结果

     2.比较优雅的抛出异常

     

    package com.atguigu.yygh.cmn.service.impl;
    
    
    import com.atguigu.yygh.common.result.Result;
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.stereotype.Component;
    import org.springframework.web.bind.annotation.ControllerAdvice;
    import org.springframework.web.bind.annotation.ExceptionHandler;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    
    @Slf4j
    @ControllerAdvice
    public class GlobalExceptionHandler {
    
    
    
        //自定义异常
        @ExceptionHandler(GuliException.class)
        @ResponseBody //为了返回数据
        public Result error(GuliException e) {
            log.error(e.getMessage());
            e.printStackTrace();
    
            return Result.fail(e.getCode()).message(e.getMsg());
        }
    
    }
    

     

    package com.atguigu.yygh.cmn.service.impl;
    
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    
    @Data
    @AllArgsConstructor  //生成有参数构造方法
    @NoArgsConstructor   //生成无参数构造
    public class GuliException extends RuntimeException {
        private Integer code;//状态码
        private String msg;//异常信息
    }
    

    @Override
    public PageInfo> selectPage(Integer page, Integer size) {
        PageHelper.startPage(page,size);
       List> list= dictMapper.selectPage1();
       if (list.size()>0){
           //throw new IllegalArgumentException("请输入正确代码表,要求表名前缀是:"+"666"+"、");
               throw new GuliException(20001,"哈哈哈哈");
    
       }
       return new PageInfo<>(list);
    }

    postman测试结果

     

     

     

  • 相关阅读:
    Redis从入门到精通(二)- 入门篇
    我把Idea给改了,看看有没有你常用的功能,没有,你告诉我,我来改
    卸载与安装JDK
    学习Vue3 第一章
    做自媒体视频剪辑必备辅助工具分享
    计算机的前世今生
    使用Psycopg2连接openGauss 3.0(python3)
    “双新”背景下需家校社协同培养孩子核心素养
    深度学习笔记
    浅谈WPF之控件模板和数据模板
  • 原文地址:https://blog.csdn.net/weixin_61503139/article/details/126602679