coverity java_coverityamp;fortify1--Poor Error Handling: Overly Broad Catch
1.告警描述:
多个 catch 块看上去既难看又繁琐,但使用一个“简约”的 catch 块捕获高级别的异常类(如 Exception),可能会混淆那些需要特殊处理的异常,或是捕获了不应在程序中这一点捕获的异常。本质上,捕获范围过大的异常与“Java 分类定义异常”这一目的是相违背的。
2.风险:
随着程序的增加而抛出新异常时,这种做法会十分危险。而新发生的异常类型也不会被注意到。
3.例子:
try{
//IOoperation
//
}
catch(Exception ex){
Log(ex);
}
Fortify建议你分别处理可能出现的异常,因为不同类型的异常需要不同的处理方法,所以应该把try{}里可能出现的异常都枚举出来,然后分别处理,正确的代码写法如下:
try {
//IOoperation
//
}
catch (IOException e) {
logger.error("doExchange failed", e);
}
catch (InvocationTargetException e) {
logger.error("doExchange failed", e);
}
catch (SQLException e) {
logger.error("doExchange failed", e);
}
coverity java_coverityamp;fortify1--Poor Error Handling: Overly Broad Catch相关推荐
- Swift2.0系列]Error Handling(项目应用篇)
1.FileManager中的应用 倘若你只是想看FileManager中的 Error Handling是如何实现的,请找到3.删除文件以及4.获取文件信息.我分别为你提供了do-catch以及tr ...
- setjmp()、longjmp() Linux Exception Handling/Error Handling、no-local goto
目录 1. 应用场景 2. Use Case Code Analysis 3. 和setjmp.longjmp有关的glibc and eglibc 2.5, 2.7, 2.13 - Buffer O ...
- 19 Error handling and Go go语言错误处理
Error handling and Go go语言错误处理 12 July 2011 Introduction If you have written any Go code you have pr ...
- Flex全局错误处理/Global Error Handling in AIR 2.0 and Flash 10.1
Global Error Handling in AIR 2.0 and Flash 10.1 http://blogs.adobe.com/cantrell/archives/2009/10/glo ...
- 关于error handling的一些理解
关于error handling的一些理解 前言 一.error handing 的常见处理方式 二 .从不同编程语言看错误 2.1 C语言的处理方式 2.2 CPP/JAVA的处理方式 2.3 GO ...
- RxSwift 小记 Error Handling Operators(catchError,retry)
(*useful)标记:目前觉得有用的函数 //FIXME 标记:待补充 ##帮助捕获错误,并可以发送消息,平滑的处理error ####catchErrorJustReturn example(&q ...
- Error Handling in ASP.NET Core
前言 在程序中,经常需要处理比如 404,500 ,502等错误,如果直接返回错误的调用堆栈的具体信息,显然大部分的用户看到是一脸懵逼的,你应该需要给用户返回那些看得懂的界面.比如,"当前 ...
- Spring Boot 2.1.5(27)---WebFlux REST API 全局异常处理 Error Handling
本文内容 为什么要全局异常处理? WebFlux REST 全局异常处理实战 小结 摘录:只有不断培养好习惯,同时不断打破坏习惯,我们的行为举止才能够自始至终都是正确的. 一.为什么要全局异常处理? ...
- swift3新路程(11)错误处理(Error Handling)
我们在Java等其他语言之都知道有错误处理 基本上都是 try和catch配对的 那么在swift中同样也有 我们首先可以定义一下自己的错误类型如下面 enum MyErrors:Error {cas ...
- 【译】 WebSocket 协议第八章——错误处理(Error Handling)
概述 本文为 WebSocket 协议的第八章,本文翻译的主要内容为 WebSocket 错误处理相关内容. 错误处理(协议正文) 8.1 处理 UTF-8 数据错误 当终端按照 UTF-8 的格式来 ...
最新文章
- Linux grep 命令
- epoll的总结 LT和ET使用EPOLLONESHOT
- Lua与Redis交互
- python 抠图 锯齿_Python | 绘图中的抗锯齿
- 使用RTL-SDR,从打开一个车门到批量打开车门
- 【李宏毅2020 ML/DL】P78 Generative Adversarial Network | fGAN: General Framework of GAN
- mysql必知必会样例表_《SQL必知必会》笔记1-样例表说明及建表语句
- 【Windows】之电脑之间共享文件(亲测可行)
- springboot 热插拔JRebel
- [附源码]Nodejs计算机毕业设计基于Yigo平台库房管理系统Express(程序+LW)
- win10自带的删除电脑流氓弹窗软件工具怎么用
- HIVE --- Metastore
- 计算机设备和打印机打不开,Windows7设备和打印机窗口打不开如何解决
- FinalShell密码找回
- 关于树叶的活动设计_小学生“树叶探秘”主题活动方案
- 治疗性经颅磁刺激后大规模脑电图神经网络的变化
- TS 对象可能为“未定义”,不能将类型“ XXXX | undefined “分配给类型{ xxxx }
- 经常被问道的cap是什么
- apache log4j漏洞复现
- python错误解决TypeError: () must be callable
热门文章
- java面试真题 烽火通信_java和数据库面试题-烽火通信
- zotero中的标准和规范应该用什么类型
- 启天m7300微型计算机,启天M7300
- gre作文3.5什么水平计算机专业,gre作文3.5分如何达到
- CodeSmith 介绍
- AWS携手光环云助力2019第三届“中信建投证券杯”世界智能围棋公开赛
- python提取格式化日志
- 相机下载_SonyPMCARE, 反向工程索尼PlayMemories相机应用
- 系统安装:D-Link DWL-G122 USB无线网卡驱动安装配置
- H264 编解码协议详解