SonarQube MyBatis插件

AI摘要

本文介绍了一款用于检测MybatisMapperXML文件中潜在SQL问题(如SQL注入和规范问题)的SonarQube插件。提供安装步骤、规则配置和使用方法,以及GitHub开源地址。,

概述

可以扫描Mybatis Mapper XML文件,发现潜在的SQL问题。

比如SQL注入,违反SQL编写规范等

 扫描效果

安装

GitHub地址,见文后放松

下载对应的jar包,放到SonarQube插件目录,重启SonarQube即可

安装完成后,就可以在SonarQube插件中看到这个插件了。

使用

配置项目的质量规则。

本插件扫描的语言是XML。

Tips:SonarQube针对每个项目,每种语言的规则只能是一种,所以若原先由XML语言的规则,会被本规则覆盖。

配置好后,就跟JAVA语言一样了。可以使用SonarScanner扫描结果。


 

XML规则

当前支持23条规则。

若由需要,可自行实现,文后放源码地址。

最后

有用的化,点点Star,3Q !

项目地址

GitHub - amoywang/sonarqube-mybatis-plugin: SonarQube MyBatis Mapper XML Plugin,Support SQL Expression and Regular Check

附上一个打包好的Jar包,对与那些访问GITHUB不方便的小伙伴。

sonarqube插件自定义 sonarqube自定义插件 阅读详情

相关推荐

SonarQube安全规则定制实践与金融行业应用

静态代码分析是现代DevSecOps流程中的核心环节,通过自动化扫描提前发现潜在安全漏洞。SonarQube作为主流静态分析工具,其内置规则库虽然覆盖常见安全问题,但面对金融等行业特殊需求时,往往需要定制化扩展。本文从XPath规则配置到Java插件开发,详解如何构建精准的企业级安全检测体系。特别针对金融行业高频出现的SQL注入、敏感数据泄露等风险场景,结合MyBatis框架特性与AES-256加密规范,展示如何通过测试驱动开发(TDD)模式将安全要求融入CI/CD流水线。实践表明,合理设计的自定义规则能使

weixin_30582943的博客 325

一文带大家搞定在SonarQube中安装汉化插件和spotbugs插件的方法(下载插件失败的同学看这里!)

在SonarQube中想要安装插件,可以在Administration>Marketplace中搜索需要的插件,然后点击下图中的Install,默认自动安装即可,非常容易!但遗憾的是,大多数同学都会像我一样,因为网络原因,而导致自动安装失败!怎么破?

liwenxiang629的博客 4495

SonarQube自定义规则开发指南与实战

静态代码分析是现代软件开发中确保代码质量的重要手段,其中SonarQube作为主流工具提供了强大的规则引擎。通过抽象语法树(AST)分析技术,开发者可以针对特定业务场景创建自定义规则,实现从基础语法检查到复杂架构约束的全方位质量管控。在微服务架构和金融级系统开发中,自定义规则能有效解决标准规则集无法覆盖的特定需求,如DTO序列化检查、MyBatis Mapper规范等典型场景。本文以Java技术栈为例,详细解析如何基于sonar-java源码框架开发高质量自定义规则,包括环境配置、规则实现、测试验证到生产部

weixin_27918373的博客 261

mybatis-插件

mybatis-插件 (新手笔记,参考自尚硅谷) 尚硅谷mybatis实战 缓存mybatis-插件1、插件原理 1、插件原理

sashaSloan的博客 667

SonarQube问题修复实战:从Bug、漏洞到代码异味的系统化解决方案

静态代码分析是现代软件工程保障代码质量与安全的核心实践。其原理是通过预定义规则集对源代码进行自动化扫描,识别潜在缺陷、安全漏洞和不良模式。这项技术的核心价值在于将质量保障左移,在开发阶段早期发现问题,显著降低后期修复成本并提升软件可维护性。在持续集成、DevOps等工程实践中,静态分析已成为构建健壮交付流水线的关键环节。本文聚焦于静态分析工具SonarQube的实战应用,针对其报告中的Bug、安全漏洞和代码异味三大类问题,提供从原理剖析到具体修复的完整指南。文章深入解析了空指针解引用、SQL注入、XSS攻击

hck341204的专栏 399

SonarQube PDF报告插件:服务端生成合规质量报告

PDF质量报告是软件交付中满足等保测评、三方审计与客户签章要求的基础技术文档,其核心在于结构化、可归档、带元数据的静态输出。不同于前端截图或API拼接,真正的工程化实现需深入SonarQube服务端,复用分析结果数据库与规则模型,通过Server Plugin在PostProjectAnalysisTask阶段介入,结合iText 7矢量渲染与多版本兼容桥接,实现从原始Issue数据到专业PDF(含目录、高亮代码、SVG图表、页眉页脚)的可靠转换。该方案直击交付型项目中‘有扫描无报告’的痛点,适用于Sona

weixin_42526166的博客 247

2019.08.18 SonarQube MyBatis Plugin 下载量突破100

SonarQube MyBatis Plugin 在经过内部使用一段时间 并在对源码和文档进行不断精心打磨之后 尝试将它推送到 SonarQube Marketplace(应用市场) 以在使用 SonarQube 这个开源项目给我们带来收益的同时 也可以对它有所贡献 经过一周左右的和...

chengmou1062的博客 388

DeepSeek-Coder v2.5在ERP二次开发中的本地化代码生成实践

ERP二次开发本质是将业务规则转化为跨层(数据库、服务、前端)的可运行逻辑,其核心挑战在于代码分散、规范严苛、环境封闭。AI辅助开发并非替代程序员,而是通过理解Spring Boot、MyBatis、SQL Server等企业级技术栈,将需求精准映射为符合编码规范与事务约束的Java/SQL/Vue三件套。DeepSeek-Coder v2.5凭借对ERP常用注解、枚举语义SQL、CI/CD就绪输出的专项优化,成为少有的能在本地离线运行、零依赖云服务的生产力工具。它适用于金蝶K3、鼎捷U9、用友BOS等主流

weixin_33923762的博客 316

SonarQube插件开发实战:从零构建自定义代码扫描规则

本文详细介绍了如何从零开始开发SonarQube自定义插件,以解决内置规则无法满足特定技术栈或团队规范的问题。通过实战演示,讲解了从环境准备、项目搭建、定义插件入口、编写规则元数据与检查逻辑(Sensor),到创建质量配置、打包部署及测试验证的完整流程。文章重点阐述了如何利用SonarQube插件API构建自定义代码扫描规则,帮助团队实现量身定制的代码质量管理。

wine的专栏 918

Mac平台IntelliJ IDEA集成MyBatis高效开发插件实战(v3.21)

常见错误:“Permission denied” when installing plugin.原因:macOS默认锁定目录,普通用户无写权限。解决:这会让你成为IDE目录的所有者,后续更新就不会再卡住了。说了这么多技术细节,我想强调一点:MyBatis插件的价值,从来不只是“省几行代码”那么简单。它真正带来的,是一种思维方式的转变——过去我们认为:“ORM就是要手写SQL,精细控制才可靠。

weixin_34640289的博客 857

UML建模能力验证与PlantUML工程实践指南

UML(统一建模语言)是软件系统分析与设计的核心建模工具,其本质是通过标准化图形表达系统结构、行为与交互。理解类图多重度、顺序图与协作图的时空建模差异、GRASP职责分配原则等基础原理,不仅支撑用例驱动开发和领域建模,更直接影响数据库设计、API契约定义与Spring Boot架构落地。在工程实践中,PlantUML已成为可执行、可验证、可集成CI/CD的轻量级建模方案——它将抽象UML语义转化为可编译代码、可校验语法、可导出交付物的技术资产。本文围绕多重度约束表达、交互图双向生成、GRASP模式决策日志等

weixin_28839439的博客 300

IntelliJ IDEA 21个神级插件,你用过几个?

工具的价值,在于通过释放人的精力,去创造更大的价值。建议大家不要一次性全部安装,而是根据自己的痛点,挑选最适合的 3-5 款先行尝试。你的 IDEA 里还装了哪些舍不得卸载的神器?欢迎在评论区分享你的“独门兵器”!

测试工程师成长之路 1967

Sonar7.8版本mybatis插件

Sonar7.8版本mybatis插件

代码质量守护神:Mybatis-PageHelper的SonarQube静态分析实践

你是否曾在生产环境遇到分页数据错乱?是否因分页插件兼容性问题排查到深夜?本文将通过SonarQube对Mybatis-PageHelper进行全方位代码质量扫描,教你如何通过静态分析提前发现潜在风险,让分页功能稳如磐石。读完本文你将掌握: - 分页插件核心模块的质量风险点 - SonarQube规则与Mybatis插件的适配方案 - 10+关键代码缺陷的定位与修复指南 ## 项目背景与分析环境 ...

gitblog_00298的博客 326

三维荧光光谱(EEM)散射干扰实战:从识别到精准切除的完整流程

本文详细解析三维荧光光谱(EEM)中散射干扰的识别与精准切除流程,涵盖瑞利散射和拉曼散射的实战处理技巧。通过drEEM工具箱的应用示例和高级场景解决方案,帮助研究者有效消除散射干扰,提升数据准确性,特别适用于环境样品和生物活体样本分析。

weixin_42554042的博客 327

Ubuntu16.04下禁用scp、sftp和winscp

在上一篇博文《Ubuntu16.04 搭建FTP服务器,设置用户权限为只许上传、禁止下载和删除》中,我讲述了Ubuntu16.04下配置FTP,并且设定用户权限为只能上传数据,禁止下载和删除数据。这算在FTP层面封堵了服务器数据泄露的途径。 但是,Ubuntu系统的scp和sftp还是起作用的,理论上只要能用本地机器ping通服务器,就可以用scp和sftp下载数据,这还是存在数据泄露可能的,所...

HPC&Geophysics攻城狮 5735

sonarqube如何使用自定义规则插件

1.将写好的自定义规则插件的jar包放到插件目录里面 /Users/zhaijing/Downloads/sonarqube-6.7.5/extensions/plugins 2.然后重启sonarqube /Users/zhaijing/Downloads/sonarqube-6.7.5/bin/macosx-universal-64 sh sonar.sh stop sh son...

weixin_34037173的博客 437

WRFDA如何读取风云四号A 星的GIIRS数据?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1025

MyBatis-Plus代码生成器实战与优化指南

MyBatis-Plus作为MyBatis的增强工具,通过自动化代码生成显著提升Java开发效率。其核心原理是基于数据库表结构元数据,结合模板引擎动态生成Entity、Mapper等持久层代码。在技术价值层面,可减少90%的重复CRUD代码编写,特别适合Spring Boot项目快速迭代。实际应用中,通过合理配置数据源、全局策略和包结构,能规范项目架构并提升可维护性。本文以电商系统为例,演示如何配置逻辑删除、乐观锁等企业级特性,并分享HikariCP连接池优化等性能调优技巧,帮助开发者高效实现数据库表到Ja

weixin_33552698的博客 239

项目经理必看:如何建立高效的相关方沟通机制?

你是否遇到过这样的场景?客户突然说“这不是我要的”,开发团队抱怨“需求总变”,高层追问“进度滞后为什么不早说”?这些问题的根源往往是——相关方沟通机制失效。本文聚焦“如何建立高效沟通机制”,覆盖从识别相关方到持续优化的全流程,适用于IT、产品、工程等各类项目。本文将按“理解问题→拆解核心概念→掌握工具方法→实战落地→未来趋势”的逻辑展开,重点讲解“相关方分析矩阵”“沟通计划表”等实用工具,并用“组织生日派对”的案例贯穿全文,让抽象概念变得可感知。相关方识别:用“权力/利益矩阵”找对人(像派对邀请关键客人)

项目管理的博客 1295

innovus:Patch Wire(补丁线)

1)选中wire ,shift+A使用Edit Route功能,F3打开edit route对话框。线道Create Patch Wire,设置好层次和宽度。在修补一些min area的drc时,会有一些danling wire的drc冒出来,为了避免这些假错,可以使用工具patch wire功能。2)沿着选中的wire画线即可。如下图,patch wire和regular wire是能看出区别的。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?

m0_61544122的博客 1962

对比评测:传统Java开发 vs TRAE插件辅助开发

这样的现代开发工具,确实能大幅提升工程效率。特别是它的智能生成和一键部署功能,把原本需要数小时的工作压缩到喝杯咖啡的时间就能完成。最惊喜的是部署环节,生成的接口直接就能在线测试,省去了本地配置环境的麻烦,这对快速验证想法特别有帮助。最近在团队内部做了一个有趣的对比实验:传统Java开发和使用TRAE插件辅助开发的效率差异。整个过程让我对现代开发工具的价值有了更直观的认识,分享给大家参考。整个过程耗时3小时12分钟,最终代码行数达到487行。接口响应时间差异在5%以内(插件生成代码性能无明显损耗)

NightshadeEagle34的博客 512

第3章 基于三电平空间矢量的中点电位平衡策略

本文档深入探讨了基于三电平空间矢量的中点电位平衡策略。重点在于NPC型三电平逆变器的中点电位平衡问题,由于三电平结构的特点,使得直流侧两个电解电容器的充放电不均匀导致中点电压不均衡。文章通过对不同矢量作用下电流、电压的变化进行了详细的定量和定性分析,并提出了利用冗余小矢量的合理配置以及引入调制因子来解决中点电位偏移的方法,确保中点电压在一个完整的开关周期内的稳定性,进而提高系统的可靠性。

嵌入式老牛的博客 2182

IDEA 常用快捷键 & 常用插件

目录 前 言 常用快捷键 前 言 1、本文这些快捷键主要针对 IDEA,但是因为IDEA 与 WebStorm 都是同一家公司的,所以大部分是通用的。 2、通常为了和 Eclipse 与 MyEclipse 的快捷键大体统一,会先设置快捷键适配 Eclipse 快捷键,这样大部分的快捷键 大家是一样的。 3、如果想自己修改快捷键或者添加快捷键,都可以在下面修改。 常用快捷键 ......

蚩尤后裔-汪茂雄 1万+

跟踪雷达点迹处理

1,点迹定义: 假设研究对象为位置x和速度v,预测值是根据这一时刻的x值、v值来预测下一时刻的x、v;测量值是根据传感器也就是雷达得到的,因为各种误差的存在,这两个值都不准确,所以把他们加权融合,得到一个新的量—状态值。 点迹就是所谓的测量值,由雷达对同一个目标探测到的一系列点(假设目标静止,但由于误差的存在,会扫描出不止一个点),航迹对应状态值,是点迹和预测轨迹的加权融合。 2,雷达信号和点迹处理关系: 3,点迹航迹处理流程 4,仿真 clear all; RealData=G

wangjie36的博客 1万+

CXSMILES细则-用于在 SMILES 字符串后存储分子的特殊特征

Chemaxon 扩展 SMILES/SMARTS 用于在 SMILES 字符串后存储分子的特殊特征。任何信息都可以存储在 SMILES 字符串后,只要它们由空格或制表符字符分隔,因为 SMILES 解析器会忽略这些信息,或者将它们作为注释使用。扩展特征以以下格式存储:Chemaxon 的扩展 SMILES/SMARTS 不包含非 ASCII 字符,它们通常以字符代码 n 的形式被转义为 &#n;。在 S-group 中,ASCII 字符“,”、“;”、“|”、“{”、“}”也以这种方式转义。此外,符号“$

ASKCOS博客 401
上一篇: Kafka开启SASL认证,认证很慢,需要20秒问题排查
下一篇: JVM DNS Cache
Jeff Dauglas
博客等级 码龄14年 1176粉丝 11原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值