Sonar常见问题解决方案

2023-10-27

阻断

1、Close this"FileInputStream" in a "finally" clause.

在finally中关闭FileInputStream,这个最为常见,主要是关闭方式不对,finally代码块中,应该要对每个stream进行单独关闭,而不能统一写在一个try-catch代码中,jdk 7 可以考虑try-resources方式关闭,代码相对优雅。

 

另外数据库操作的statement和resultRs没有关闭的情况也非常多。这个也是要重点留意的地方。

 

2、A"NullPointerException" could be thrown; "tom" is nullablehere

空指针,极为讨厌的问题,主要是编码经验缺少的体现。一般的高手在编码过程中,就会第一时间考虑到这类情况,并做相应的处理。解决方式无它,先判断或者先实例化,再访问里面的属性或者成员。

 

 

 

 

严重

1、Define and throw a dedicated exception instead of using a generic one

定义并抛出一个专用的异常来代替一个通用的异常。

 

2、Removethis hard-coded password

移除代码里硬编码的密码信息。会有少许的误判的情况,一般是变量包含:PWD或者password,所以如果真的不是硬编码,可以考虑更换变量名称,比如PWD改PW等等。

 

3、Eitherlog or rethrow this exception

catch异常之后࿰

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Sonar常见问题解决方案 的相关文章

  • 五张图带你理解 RocketMQ 顺序消息实现机制

    大家好 我是君哥 今天聊一聊 RocketMQ 的顺序消息实现机制 在有些场景下 使用 MQ 需要保证消息的顺序性 比如在电商系统中 用户提交订单 支付订单 订单出库这 3 个消息应该保证顺序性 如下图 对于 RocketMQ 来说 主要是
  • Electron桌面开发入门

    1 初始化工作 midir electron demo cd electron demo npm init 到package json 文件下将入口文件修改为main js main main js 并且创建main js文件 electr
  • Java猫和狗(继承,多态,抽象,接口版)上

    Java的继承 抽象 多态 接口的简单应用 我们利用 猫和狗都是动物类 然后猫会抓鱼 狗会看门的这些方法来简单应用一下继承 抽象 多态 接口 简单思路就是 1 定义动物类 2 定义猫 狗类 让他们成为动物的子类 3 编写测试类 继承 使子类
  • PTA L1-016:查验身份证 (python)

    一 题目要求 二 参考代码 sheet 0 1 1 0 2 X 3 9 4 8 5 7 6 6 7 5 8 4 9 3 10 2 w 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 n int input c 0 f
  • ARM单片机FATFS文件系统的移植

    ARM单片机FATFS文件系统的移植 测试效果 前提条件 下载所需源码 FATFS 文件系统 SFUD万能驱动 加入工程 接口驱动 测试代码 FreeRTOS10 0 1 FATFS FF14A SFUD V1 1 0 STM32F103Z
  • 超过2t硬盘分区_大于2T的磁盘怎么分区呢?

    由于购买了磁盘柜专门用作存储 后来考虑到磁盘容量的动态管理 准备采用LVM进行动态扩容管理了 首先让前端挂载机器能够识别到磁盘柜的逻辑卷组 比如 dev sdb 先介绍2种分区表 MBR分区表 MBR含义 主引导记录 所支持的最大卷 2T
  • 6.8过程纹理

    过程纹理也称为自定义纹理 根据计算得出 这个例子使用了位置和原点的距离作为输入参数 并加入了动画 但是和目前的纹理没任何关系 纯手工计算 因为位置是三维的 所以在涉及到纹理的几个地方都要改为三维的 struct RENDEROBJECT D
  • Java中的&、&&、

    关于这几个的运算符我一代码的实例来介绍 如下 1 首先它们都是逻辑运算符 但是 和 是短路运算符 也就是只判断运算符左边的即可 就可以确定整个表达式的结果了 所以它的执行效率高于 和 因为这两个运算符需要将表达式中所有的boolean值都判
  • JAVA开发(行业现状与未来)

    JAVA开发行业经过了这么多年的发展 曾经从一个机顶盒程序起家 到超过3亿台以上设备都在运行JAVA程序 JAVA语言见证了整个互联网化的工业化过程 许许多多的东西从从传统模式搬到了线上 特别是电子商务和网络社交的发展 大量的资金投入的这个
  • 【算法系列篇】前缀和

    文章目录 前言 什么是前缀和算法 1 模板 前缀和 1 1 题目要求 1 2 做题思路 1 3 Java代码实现 2 模板 二维前缀和 2 1 题目要求 2 2 做题思路 2 3 Java代码实现 3 寻找数组的中心下标 3 1 题目要求
  • 【MATLAB第67期】# 源码分享

    MATLAB第67期 源码分享 基于MATLAB的morris全局敏感性分析 一 代码展示 clear all npoint 100 在分位数超空间中要采样的点数 计算次数iter npoint nfac 1 nfac 20 研究函数的不确
  • 浏览器跨域问题

    1 同源策略 同源策略是一种约定 是浏览器最核心也是最基本的安全功能 可以说Web是构建在同源策略基础之上的 浏览器之上针对同源策略的一种实现 同源 协议 域名 端口号都相同的才称为 同源 同源策略用于限制一个origin的文档或者它加载的
  • 随机选择一个三位以内的数字作为答案。用户输入一个数字,程序会提示大了或是小了,直到用户猜中。

    import random b random randint 0 999 A input input a 0 999 number a int A 用户输入 while a b if a gt b A input input a less
  • vue+图片上传+预览

    学习记录 实现本地图片上传和预览 切记使用 accept image 可以指定文件类型
  • 逐步解读HTTP报文的组成及含义

    如果说HTTP是因特网的信使 那么HTTP报文就是运送的包裹 所有的HTTP程序都是通过互相发送报文来完成工作的 本文将介绍HTTP报文的流动方式 报文的组成部分 请求和响应报文之间的区别等 报文流 HTTP报文是在HTTP应用程序之间发送
  • Java并发编程详解:实现高效并发应用的关键技术

    文章目录 引言 一 线程安全性 二 并发集合 结论 引言 在当前的计算机领域 高效的并发编程对于Java开发人员而言变得越发重要 作为流行的编程语言 Java提供了强大的并发编程支持 使开发人员能够充分发挥多核处理器和线程的潜力 构建高性能
  • 限制input框只能输入0~100的正整数

    法一 复杂
  • 【Gazebo安装教程】2023年最新安装全流程详解!

    安装 实验环境 ubuntu22 04LTS 安装 Gazebo 首先我们需要安装必须的工具 sudo apt get update sudo apt get install lsb release wget gnupg 之后修改源 并 u
  • 爬虫异常处理实战:应对请求频率限制和数据格式异常

    目录 一 请求频率限制的处理 1 设置请求间隔时间 2 使用随机化延迟 3 添加爬虫IP和用户代理 二 数据格式异常的处理 1 异常数据的过滤 2 错误信息的记录 3 动态调整解析规则 总结 在爬虫编程中 我们经常会遇到各种异常情况 比如请

随机推荐

  • 确定Mac\Linux系统的架构类型是 x86-64(amd64),还是 arm64 架构

    我们在下载软件或镜像时会有很多版本 那需要根据我们的系统架构选择正确的软件或镜像版本 要确定你的系统使用的是 x86 64 amd64 还是 arm64 架构 可以使用以下方法之一 使用 uname 命令 打开终端 并运行以下命令 unam
  • 【Java核心技术 卷I】第一章 Java程序设计概述 笔记

    是自学和看书的笔记 有的地方感觉了解一下就行了 就没记笔记 1 2 Java的11个关键术语 简单性 面向对象 分布式 健壮性 安全性 体系结构中立 可移植性 解释性 高性能 多线程 动态性 简单性 Java语法是C 语法的一个 纯净 版本
  • logback TimeBasedRollingPolicy的fileNamePattern和file配置详解

    文章目录 1 file配置项 2 fileNamePattern配置项 3 fileNamePattern和file的搭配使用 解耦 4 fileNamePattern的不同 d配置举例说明 4 1 Wombat foo d 天级更新 4
  • Linux下TBB安装及编译

    TBB Thread Building Blocks 线程构建模块 是Intel公司开发的并行编程开发的工具 其提供C 模版库 用户不必关注线程 而专注任务本身 抽象层仅需很少的接口代码 性能上毫不逊色 且能够灵活地适合不同的多核平台 适合
  • 小电流接地系统中的单相接地仿真:中性 点经消弧线圈接地系统的仿真模型

    小电流接地系统中的单相接地仿真 中性 点经消弧线圈接地系统的仿真模型 得出仿真图形 simulink源文件 仿真仿真 matlab ID 1865658490724243
  • GPT-4发布:人工智能新高度,以图生文技术震撼,短时间内挤爆OpenAI模型付费系统

    GPT 4 起飞 今日凌晨1点 OpenAI正式推出史上最强大的GPT 4文本生成AI系统 GPT 4 人工智能的新里程碑 你可能已经听说过GPT 3 它是一种能够生成自然语言文本的强大模型 可以用来回答问题 写文章 编程 创作等等 但是
  • Qt开发之路59---QPushButton的pressed,released,clicked,toggled响应的区别

    一 定义 PushButton提供如下信号 pressed 当鼠标在button上并点击左键的时候发射 released 当鼠标左键被释放的时候 clicked bool checked false 当鼠标首先按下pressed 然后释放
  • c语言练习64:calloc和realloc

    calloc和realloc C语 还提供了 个函数叫 calloc calloc 函数也 来动态内存分配 和realloc是有区别的 练习使用calloc和realloc realloc在c语言练习63中有所应用 realloc是为了扩大
  • 数字图像直方图处理涉及的数学知识介绍

    前往老猿Python博文目录 https blog csdn net LaoYuanPython 一 引言 在数字图像直方图处理学习时 老猿发现相关内容涉及数学定积分 概率统计等相关的知识 为此专门投入2个月时间将忘光了导数 微分 不定积分
  • ACN总结报告

    ACM总结报告 关于学到的知识 先暂且留一下 先说说这学期的情况 还记得 刚开始时选择这门选修课 除了听说它对于我们计算机专业的来说很有用之外 就是听说它很难 想要挑战一下自我而已 想想 现在不由自主的想要笑起来 说实在的 对于这门选修课
  • Flamingo插件_Contact Form 7表单数据存储插件

    Flamingo插件是一款用来帮助 Contact Form 7表单数据存储的插件 因为Contact Form 7插件本身没有数据存储功能 默认把前台访客提交的表单数据提交到设置好的接收邮箱 如果邮件服务器出现问题 配置错误就可能会永远丢
  • 第一课:一文读懂马尔科夫过程

    1 马尔科夫决策过程 MDPs 简介 马尔科夫决策过程是对强化学习 RL 问题的数学描述 几乎所有的RL问题都能通过MDPs来描述 最优控制问题可以用MDPs来描述 部分观测环境可以转化成POMDPs 赌博机问题是只有一个状态的MDPs 注
  • 查看LINUX放开端口,Linux下防火墙开启相关端口及查看已开启端口

    Linux下防火墙开启相关端口及查看已开启端口 1 默认情况下Linux的防火墙都是在关闭状态下的 root test etc service iptables status Firewall is stopped root test et
  • 新建Springboot项目默认test包下的测试类报错缺少org.junit.jupiter.api

    在springboot项目中碰到一个问题 记录一下 新建了一个普通的Maven项目A 其pom xml继承parent为
  • 电脑怎么恢复已删除的数据?

    恢复已经删除的数据取决于多种因素 包括删除的方式 存储设备的类型以及是否有备份等 以下是一些常见的方法 但不能保证所有情况下都能成功恢复数据 在尝试恢复数据之前 请确保不会进一步覆盖原始数据 以提高恢复成功的机会 回收站 如果你删除的是电脑
  • mysql数据去重并排序使用distinct 和 order by 的问题

    比如直接使用 SELECT distinct mobileFROM table aWHERE code 123ORDER BY a ime desc 在本地mysql数据库没有错 在线上的数据库就会报如下错 估计是版本的问题 Express
  • 典型的贪心算法~ (田忌赛马 )

    1 田忌赛马 典型的贪心算法 自己木有考虑到贪心的第二步导致wa了好多次 算法分析 Problem Description 给出2N组数据 分别表示田忌和齐威王的N匹马的速度 没进行一场比赛 每组数据共N场场赛 若能分出胜负 则输的一方要给
  • DVWA之SQL注入

    一 DVWA介绍 1 1 DVWA简介 DVWA是一款基于PHP和MYSQL开发的web靶场练习平台 集成了常见的web漏洞如sql注入 XSS 密码破解等常见漏洞 旨在为安全专业人员测试自己的专业技能和工具提供合法的环境 帮助web开发者
  • 七牛云上传图片,只需十分钟搞定

    1 去七牛云注册 建好自有空间 2 导入依赖
  • Sonar常见问题解决方案

    阻断 1 Close this FileInputStream in a finally clause 在finally中关闭FileInputStream 这个最为常见 主要是关闭方式不对 finally代码块中 应该要对每个stream