java自定义的异常类

1、自定义异常类,需要继承 RuntimeException

@Data
public class EmployeeCheckException extends RuntimeException
{
private int code;

private String msg;

public EmployeeCheckException(String msg, int code)
{
this.code = code;
this.msg = msg;
}

public EmployeeCheckException(String msg)
{
this.code = DATA_PARAM_FAIL_CODE;
this.msg = msg;
}
}

  

2、和全局异常放在一起

@RestControllerAdvice
@Slf4j
public class GlobalExceptionHandler
{ /**
* 异常处理方法,可以自定义异常
* @param request 请求
* @param e 异常
* @return 错误提醒
*/
@ResponseBody
@ExceptionHandler(value = Exception.class)
public String defaultErrorHandler(HttpServletRequest request, Exception e)
{
//输入参数不满足约束
if(e instanceof MethodArgumentNotValidException)
{
e.printStackTrace();
BindingResult result = ((MethodArgumentNotValidException) e).getBindingResult();
return ResponseJsonUtil.returnJson(result.getAllErrors().get(0).getDefaultMessage(), PsiInfo.BAD_REQUEST.code);
}
else if(e instanceof IllegalArgumentException)
{
e.printStackTrace();
return ResponseJsonUtil.returnJson(e.getMessage(), PsiInfo.BAD_REQUEST.code);
}
else if(e instanceof EmployeeCheckException)
{
return ResponseJsonUtil.returnJson(((EmployeeCheckException)e).getMsg(), ((EmployeeCheckException) e).getCode());
}
else
{
e.printStackTrace();
return ResponseJsonUtil.returnJson(PsiInfo.ERROR.name, PsiInfo.ERROR.code);
}
}
}

  

java自定义的异常类的更多相关文章

  1. java异常,异常处理,异常类 关键字:throws 和 throw 自定义的异常类

    package cn.kecheng; import java.util.Scanner; /**异常:异常是指在程序的运行过程中所发生的不正常的情况,它会中断正在运行的程序 异常处理机制:java中 ...

  2. 基于数组实现Java 自定义Stack栈类及应用

    栈是存放对象的一种特殊容器,在插入与删除对象时,这种结构遵循后进先出( Last-in-first-out,LIFO)的原则.java本身是有自带Stack类包,为了达到学习目的已经更好深入了解sta ...

  3. java中自定义一个异常类 在某些情况抛出自定的异常 ----------阻断程序

    //=============定义异常类 package org.springblade.flow.engine.errorException; /** * 自定义异常处理写入sap失败 */ pub ...

  4. Java学习(异常类)

    一.什么是异常: 异常就是在运行时产生的问题.通常用Exception描述. 在java中,把异常封装成了一个类,当出现问题时,就会创建异常类对象并抛出异常相关的信息(如详细信息,名称以及异常所处的位 ...

  5. Java学习(异常类练习题)

     练习题: 1.计算圆的面积,半径不能为零和负数 package com.oracle.Demo01; public class Demo02 { // 写一个计算圆的面积的方法,传一个半径,返回面积 ...

  6. Core Java 总结(异常类问题)

    所有代码均在本地编译运行测试,环境为 Windows7 32位机器 + eclipse Mars.2 Release (4.5.2) 2016-10-17 整理 下面的代码输出结果是多少?为什么?并由 ...

  7. java中的异常类

    Java中的异常: 1. Throwable是所有异常的根,java.lang.Throwable Throwable包含了错误(Error)和异常(Exception),Exception又包含了运 ...

  8. java内部类和异常类的概念

    1.内部类的外嵌类的成员变量在内部类中任然有效,内部类中的方法也可以调用外嵌类中的 方法,内部类中不可以声明类的变量和方法,外嵌的类体可以用内部类声明对象,作为外嵌类的成员.内部类仅供他的外嵌类使用. ...

  9. JAVA中常见异常类

    1. java.lang.nullpointerexception 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对 ...

  10. Java 创建用户异常类、将异常一直向上抛、 throw和throws的区别

    如果java提供的系统异常类型不能满足程序设计的需求,那么可以设计自己的异常类型. 从java异常类的结构层次可以看出,java类型的公共父类为Throwable.在程序运行中可能出现俩种问题:一种是 ...

随机推荐

  1. airtest IDE初级教程

    一.简介 AirtestIDE 是一款跨平台的 UI自动化测试编辑器 ,内置了Airtest和Poco的相关插件功能,能够使用它快速简单地编写 Airtest 和 Poco 代码. 1. Airtes ...

  2. docker 部署rocketmq 4.4

    1 mkdir -p /home/rocketmq/{name_server,broker,console} 2 mkdir -p /home/rocketmq/name_server/{logs,s ...

  3. Vue-cli JSX踩坑问题!

    今天封装一个公用组件库,期间使用到了JSX,发现在Data配置中去配置渲染函数出现了 h function is not defined的问题?? 网上查询一大堆所谓安装JSX的东西,其实Vue-cl ...

  4. 用python从网页下载单词库

    从网站下载单词库 1 每一页有几百个单词 2 每一个单词有独立的URL,URL中包含单词的中文解释 3 使用的库 requests,pyquery,web #coding:utf-8 import r ...

  5. notepad++解决粘贴复制代码行数问题

    一.打开 Notepad++,按住 Alt,鼠标点击拖出选择框,这个是列选方法.如图: 然后删除即可 二. 1.将带行数的代码粘贴复制到notepad++中: 2.按ctrl+f,选中替换,选中正则表 ...

  6. Postman 测试 Web Service 和 WCF

    一.postman 测试web service(1)设置url http://www.oorsprong.org/websamples.countryinfo/countryinfoservice.w ...

  7. vue3 门户网站搭建5-图标

    奈何 element 自带的图标太少,不够用,故打算使用 vite-plugin-svg-icons 组件来封装 svg-icon . ps: ui 框架选用的 element-ui,为了能跟 vue ...

  8. uni-app初使用

    关于样式 rpx(responsive pixel): 可以根据屏幕宽度进行自适应.规定屏幕宽为750rpx.如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = ...

  9. nginx从仅支持80到支持80和443

    测试环境的域名,之前只支持http.开发同学不知啥时候改了数据库配置,导致所有跳转到到了https了.所以得加上https访问. 配置文件之前是这样的: 1 server { 2 listen 80; ...

  10. 兼容ie8的Html+Css+Js

    1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset=" ...