本文为项目原创介绍稿,内容以 Develop Helper
0.1.24的现有实现为准。并结合实际使用情况补充说明。
日常开发中,编码转换、SQL 整理、接口调试、证书查看、端口排查这些事情通常不难,却总会打断编码节奏:切换网页工具、打开终端、再把结果复制回来。Develop Helper 是一个 IntelliJ IDEA 插件,尝试把这类高频辅助操作放回 IDE 内完成。
它不是要替代专业的抓包、数据库或密码学工具,而是面向开发过程中的常见小任务,提供一个尽量集中的入口。
一、插件定位与入口
Develop Helper 目前主要由以下入口组成:
- 底部
developer-helper工具窗口:文本、密码学、网络和性能相关工具; - 右侧
Fast Request工具窗口:接口请求与 API 管理; - 右侧
Database Tools工具窗口:数据源与 SQL Console; - 编辑器右键菜单:命名转换、翻译、Git 行历史、POJO/JSON 转换等;
Settings -> 开发助手:统一管理功能开关与相关配置。
不必一次使用全部能力。可以在 Settings -> 开发助手 中按需启用、关闭并排序功能模块,把常用工具保留在界面中,不需要的模块则可关闭。
二、几个更贴近日常开发的功能
1. 文本、命名与编码转换
对于字段命名、接口参数、配置键等文本,插件支持 camelCase、CamelCase、snake_case、kebab-case 等多种命名风格转换,也可通过右键菜单或快捷键循环转换。
编码工作台提供 Base64、URL、HTML、Unicode、Hex 的编码与解码,并带有实时转换、自动换行和历史记录等辅助能力。适合处理接口参数、日志片段和前后端联调中的临时文本。
2. 文件编码转换:先识别、再校验、再备份
文件编码转换支持单个文件、多文件和文件夹递归处理。使用时可以先识别源编码;选择文件夹时,插件会按路径顺序取第一个可处理文件作为识别依据。
为避免把混合编码目录直接改坏,文件夹转换会在写入前预检全部文件:如果读到与源编码不一致的文件,会提示并取消整批转换。转换前会自动备份:
- 单文件在同级生成
.bak备份; - 文件夹在同级生成完整
.bak目录备份,避免把备份文件散落到原目录中; - 默认采用严格转换;目标编码无法表示某些字符时可由用户主动开启有损转换。
这项能力不能替代版本控制或人工确认。处理重要文件前,仍建议先提交代码或另行保留备份。
3. SQL、MyBatis 日志与数据库工作台
插件提供 SQL 格式化、压缩,以及从 MyBatis 日志还原 SQL 的能力,也支持从 ShardingSphere 日志中提取 Logic SQL 和 Actual SQL。
独立的 Database Tools 工具窗口支持 SQLite、兼容 JDBC password 属性的 SQLCipher、H2、MySQL、PostgreSQL、SQL Server、Oracle、达梦、KingbaseES、openGauss 及自定义 JDBC 数据源。它可用于管理连接、浏览库表结构、打开 SQL Console、执行查询、查看执行日志,以及对查询结果进行有限的编辑和回写。
涉及生产数据库时,请遵循所在团队的权限和变更流程;插件会对部分危险 SQL 提供确认,但这不能替代账号权限和操作审查。
4. TCP 调试与端口检查
网络工具可向指定 Host 和端口发送 TCP 数据,也可以启动本机 TCP 接收服务进行联调。发送内容、自动响应、返回数据和接收日志均支持 UTF-8 文本、二进制、Hex、Base64 四种格式;日志展示默认使用 Hex,便于观察不可见字节和协议报文。
端口检查可按端口查询 TCP/UDP 占用进程,展示进程、工作目录、启动命令、JDK 路径等信息,并支持在确认后结束选中进程。结束进程会影响正在运行的服务,操作前应先核对目标。
5. 证书解析、ASN.1 与证书链验证
证书处理是开发联调中很容易遇到、也很容易因格式而耗时的场景。插件的 X.509 证书解析工作台支持 Base64、Hex、字节数组等输入形式,可用于查看证书的版本号、序列号、签名算法、有效期、颁发者、主体、主体公钥和签名值等基础字段。
对于扩展项,工具会尝试解析主题备用名(SAN)、授权信息访问(AIA)、CRL 分发点、密钥用法、基本约束等常见内容,并提供 PEM 添加、PEM 去除、移除空格和换行等文本整理操作。在 Windows 环境下,还可以选择调用系统证书查看能力。
如果拿到的是底层结构或无法直接识别的二进制内容,可以使用 ASN.1 解析工作台。它支持 Base64、Hex 输入,可把 DER/BER 结构以树形方式展示,并支持按 OID 或内容搜索、复制节点值,以及复制为字节数组、Hex、Base64。对 X.509 证书、CSR 等结构的定位会更直观。
对于多级证书,证书链验证工作台支持导入 P7B/P7C、多个证书文件或多个 PEM 证书。即使输入顺序混乱,也会尝试构建从终端证书到中间 CA 再到根证书的链路,并检查签名值、有效期、keyId、Subject/Issuer、CA 约束、KeyUsage、根证书自签和 CA 认证路径深度等信息,同时提示链外多余证书。
这些解析与校验结果适合辅助排障和理解证书内容;是否信任某张证书、是否满足实际业务安全策略,仍应以操作系统、浏览器、网关或业务系统的最终校验规则为准。
6. 密码算法工作台
密码算法工作台把若干常见操作集中到同一页面,方便对接前验证数据格式和算法参数。当前支持的主要能力包括:
- 非对称密钥对生成:RSA、DSA、EC、SM2、Ed25519、Ed448;
- 对称密钥生成:AES、SM4、DES、DESede、Blowfish、Camellia、ARIA、SEED、ChaCha20;
- P10 CSR 生成,可内部生成密钥或使用已有公私钥;
- RSA、ECDSA、DSA、SM2、EdDSA 的签名与验签;
- 非对称加解密、对称加解密、Hash、HMAC;
- PKCS#7/P7 签名及数字信封加解密。
输入、密钥、参数和输出可使用 UTF-8、Base64、Hex 等格式,部分操作支持文件输入。这降低了测试数据在"文本、字节、编码字符串"之间来回转换的成本,但不应把它当作生产密钥托管或安全审计系统。私钥、口令和生产证书应避免写入项目文件、截图和公开文章。
7. 接口调试、POJO/JSON 与大模型辅助
Fast Request 工具窗口支持从 Java 接口代码生成 URL 和参数,发送 GET、POST、DELETE、PUT、PATCH 等请求,并提供 Header、路径参数、查询参数、JSON、表单、Multipart 等输入方式。响应可按 JSON、Pretty、Raw、Info 等视图查看,也可管理环境、公共 Header 和接口收藏。
POJO/JSON 转换可从 JavaBean 生成示例 JSON,或根据 JSON 在当前 Java 包下生成 JavaBean。大模型辅助则提供选中文本翻译、翻译并替换、JavaDoc 生成、变量/方法命名建议,以及多模型、提示词和术语映射配置。
配置大模型服务时,请自行保管 API Key,不要将真实密钥写入源码、截图、文章或公开配置文件。
8. Git 行历史与性能火焰图
编辑器中可查看当前光标所在行的 Git 变更历史;性能工具则使用当前项目 JDK 的 JFR/jcmd 采集 Java 进程 CPU 样本,生成交互式火焰图,并支持 HTML、SVG 和折叠栈导出。
性能采集会对目标进程产生额外开销,应根据服务环境和采样参数谨慎使用。
三、安装与更新
插件安装包会通过项目 Release 发布。请从 Release 页面 下载与 IDEA 版本兼容的 ZIP 插件包;不要解压该 ZIP 文件。
随后在 IntelliJ IDEA 中依次打开 Settings -> Plugins,从齿轮菜单选择 Install Plugin from Disk...,选中下载的 ZIP 文件并重启 IDE 即可。
后续更新时,下载新版 Release 的 ZIP 包并重复上述安装步骤。项目源码地址:https://gitee.com/li_dg/develop-helper,具体功能与兼容性请以对应 Release 说明和仓库 README 为准。
四、开源许可与使用边界
项目以 GNU Affero General Public License v3.0 或更高版本(AGPL-3.0-or-later)发布,且保留所包含 Fast Request 相关代码的原始版权与许可证声明。使用、修改或再发布前,请阅读仓库中的 LICENSE 与 THIRD_PARTY_NOTICES.md,确认自身场景满足相应许可证要求。
本文只介绍插件的开发辅助用途,不构成安全、合规、数据库操作或第三方服务的专业建议。请勿在文章、截图、日志或示例中公开密码、Token、证书私钥、个人信息、生产库连接串或其他敏感数据。
五、结语
Develop Helper 更适合被当作一个持续演进的开发辅助工具集:把零散的小操作留在 IDEA 里,把需要专业治理的操作仍交给合适的流程和工具。可先按自己的开发场景启用所需模块,再逐步体验其他能力。欢迎大家下载使用;如遇到问题、发现功能缺陷或有改进建议,欢迎在项目仓库提交 Issue。