当前位置: 首页 > news >正文

遂溪手机网站建设公司免费下载app并安装

遂溪手机网站建设公司,免费下载app并安装,网络规划设计师挂靠,可以做网站的路由器一、目的 当客户端/前端向服务端发送一个请求后,这个请求并不是每次都能完全正确的处理,比如出现一些资源不存在、参数错误或者内部错误等信息的时候,就需要将异常反馈给客户端或者前端。那么这就需要程序有完整的异常处理机制。 在 Java 中所…

一、目的

        当客户端/前端向服务端发送一个请求后,这个请求并不是每次都能完全正确的处理,比如出现一些资源不存在、参数错误或者内部错误等信息的时候,就需要将异常反馈给客户端或者前端。那么这就需要程序有完整的异常处理机制。

        在 Java 中所有异常的基类都是 Throwable 延伸出来,但通常不使用 Throwable,在该基类延伸出来 ErrorException 两种异常,严格意义上讲 Error 不属于异常,而是错误,Exception 才是异常,两者有什么区别呢?

        错误:所谓错误就是应用发生错误的是就启动不起来,一般都是操作系统或者是 JVM 级别上发生的错误,一旦发生错误,我们是无法通过代码来进行处理的;

       异常: Exception 一般是我们可以通过代码来进行处理的,例如我们平时查询数据库没有找到某一条记录,就是一个典型的空异常,再比如我们进行计算的时候,分母为 0, 也会报一个异常。

       Error 在平常工作我们是不需要处理,重点就是 Exception,Exception 又分为两种,一种是 CheckedException 异常,另一种是 RuntimeException 异常;这两个异常的区别是 CheckedException 要求必须在代码中进行处理,如果不处理,程序连编译都无法通过;RuntimeException不要求强制进行处理,因为这个异常属于运行的异常,不一定在编译阶段就能发现。

二、实现

        SpringBoot中,@ControllerAdvice 即可开启全局异常处理,使用该注解表示开启了全局异常的捕获,我们只需在自定义一个方法使用@ExceptionHandler注解然后定义捕获异常的类型即可对这些捕获的异常进行统一的处理。

一、定义一个全局异常处理类


@RestControllerAdvice
public class GlobalExceptionAdvice {// 处理已知异常(自定义异常)@ExceptionHandler(NepException.class)public ResponseEntity handleNepException(NepException e) {return new ResponseEntity(400, "空指针异常" + e.getMessage(), "");}// 未知异常@ExceptionHandler(Exception.class)public ResponseEntity handleException(Exception e) {return new ResponseEntity(400, "未知异常" + e.getMessage(), "");}}

二、返回体

@Data
@AllArgsConstructor
@NoArgsConstructor
public class ResponseEntity {private Integer code;private String message;private Object data;
}

3、全局运行时异常拦截


@GetMapping("/aa")
public ResponseEntity aa(){double a = 1/0;return new ResponseEntity(200,"请求成功","");
}@GetMapping("bb")
public ResponseEntity bb(){ResponseEntity responseEntity = null;try {responseEntity.getCode();}catch (NullPointerException nullPointerException){throw new NepException();}return new ResponseEntity(200,"请求成功","");
}

四、自定义异常类

public class NepException extends NullPointerException{}

五、全局异常返回

四、总结

整个流程就是全局异常拦截,当然不止这一行几行代码,很多地方都可以根据我们自身实际业务情况以此为基础进一步丰富,比如返回数据可以改成跳转某一个具体的页面。这样的出场方式是不是都很优雅。总的来说,我们可以根据自身业务和实际需求对异常进行全局处理。

http://www.khdw.cn/news/28591.html

相关文章:

  • 做自己的网站流量怎么软件开发app制作
  • 毕业设计做网站 服务器怎么弄软件测试培训班多少钱
  • 郑州做网站优化外包站内搜索工具
  • 网站建设评标办法兰州做网站的公司
  • 网站开发是什么意思啊2023年10月疫情恢复
  • 做网站域名需哪些如何注册网站怎么注册
  • wordpress多站列表怎么进行推广
  • 网站是可以做的吗泰安百度推广电话
  • 网站的总体风格包括成都网站seo厂家
  • 建站 哪个网站系统好用淘客推广怎么做
  • 青岛网站建设最便宜免费域名怎么注册
  • 转包网站建设做非法事情五年级下册数学优化设计答案
  • 淳安网站建设免费推广平台排行
  • 手机3g门户首页网址seo优化排名
  • 网站 尺寸seo研究中心vip教程
  • 什么网站可以做宣传公关公司排行榜
  • 有哪些网站建设企业今日新闻网
  • 廊坊网站建设电话2020 惠州seo服务
  • 我们做的网站是优化型结构百度长尾关键词挖掘
  • 社保网站减员申报怎么做口碑营销的作用
  • 网站建设金成都百度推广联系方式
  • 做网站的工具+论坛seo和网络推广有什么区别
  • 网站建设banner关键词林俊杰的寓意
  • 衢州网站建设推广网络营销策划方案模板范文
  • 专业手机移动网站建设seo专员是什么意思
  • 做健身网站seo优化技术培训
  • 卧龙区建网站云南省最新疫情情况
  • 著名优秀产品设计案例seo搜索引擎优化介绍
  • 网站注册协议模板郑州做网站的专业公司
  • 做教学的视频网站有哪些问题网站竞价推广都有哪些