Java 优质开源工具类
约 1336 字大约 4 分钟
代码质量
- lombok :使用 Lombok 我们可以简化我们的 Java 代码,比如使用它之后我们通过注释就可以实现 getter/setter、equals 等方法。
- guava:Guava 是一组核心库,其中包括新的集合类型(例如 multimap 和 multiset),不可变集合,图形库以及用于并发、I / O、哈希、原始类型、字符串等的实用程序!
- hutool : Hutool 是一个 Java 工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让 Java 语言也可以“甜甜的”。
问题排查和性能优化
- arthas:Alibaba 开源的 Java 诊断工具,可以实时监控和诊断 Java 应用程序。它提供了丰富的命令和功能,用于分析应用程序的性能问题,包括启动过程中的资源消耗和加载时间。
- Async Profiler:低开销的异步 Java 性能分析工具,用于收集和分析应用程序的性能数据。
- Spring Boot Startup Report:用于生成 Spring Boot 应用程序启动报告的工具。它可以提供详细的启动过程信息,包括每个 bean 的加载时间、自动配置的耗时等,帮助你分析和优化启动过程。
- Spring Startup Analyzer:采集 Spring 应用启动过程数据,生成交互式分析报告(HTML),用于分析 Spring 应用启动卡点,支持 Spring Bean 异步初始化,减少优化 Spring 应用启动时间。UI 参考Spring Boot Startup Report实现。
文档处理
文档解析
- Tika:Apache Tika 工具包能够检测并提取来自超过一千种不同文件类型(如 PPT、XLS 和 PDF)的元数据和文本内容。
Excel
- easyexcel :快速、简单避免 OOM 的 Java 处理 Excel 工具。
- excel-streaming-reader:Excel 流式代码风格读取工具(只支持读取 XLSX 文件),基于 Apache POI 封装,同时保留标准 POI API 的语法。
- myexcel:一个集导入、导出、加密 Excel 等多项功能的工具包。
Word
- poi-tl:基于 Apache POI 的 Word 模板引擎,可以根据 Word 模板和数据生成 Word 文档,所见即所得!
JSON
- JsonPath:处理 JSON 数据的工具库。
- x-easypdf:一个用搭积木的方式构建 PDF 的框架(基于 pdfbox/fop),支持 PDF 导出和编辑。
- pdfbox :用于处理 PDF 文档的开放源码 Java 工具。该项目允许创建新的 PDF 文档、对现有文档进行操作以及从文档中提取内容。PDFBox 还包括几个命令行实用程序。PDFBox 是在 Apache 2.0 版许可下发布的。
- OpenPDF:OpenPDF 是一个免费的 Java 库,用于使用 LGPL 和 MPL 开源许可创建和编辑 PDF 文件。OpenPDF 基于 iText 的一个分支。
- itext7:一个用于创建、编辑和增强 PDF 文档的 Java 库。
- FOP : Apache FOP 用于将 XSL-FO(Extensible Stylesheet Language Formatting Objects)格式化对象转换为多种输出格式,最常见的是 PDF。
图片处理
- Thumbnailator:一个图像处理工具库,主要功能是缩放图像、添加水印、旋转图像、调整图片大小以及区域裁剪。
- Imglib:一个轻量级的 JAVA 图像处理库,致力于简化对图像的常见处理,主要提供三部分的能力:图像收集、图像处理(基于 Thumbnailator 实现)、聚合与分裂。
验证码
- EasyCaptcha:Java 图形验证码,支持 gif、中文、算术等类型,可用于 Java Web、JavaSE 等项目。
- AJ-Captcha:行为验证码(滑动拼图、点选文字),前后端(java)交互。
- tianai-captcha:好看又好用的滑块验证码。
短信&邮件
- SMS4J:短信聚合框架,解决接入多个短信 SDK 的繁琐流程。
- Simple Java Mail:最简单的 Java 轻量级邮件库,同时能够发送复杂的电子邮件。
在线支付
- jeepay:一套适合互联网企业使用的开源支付系统,已实现交易、退款、转账、分账等接口,支持服务商特约商户和普通商户接口。已对接微信,支付宝,云闪付官方接口,支持聚合码支付。
- YunGouOS-PAY-SDK:YunGouOS 微信支付接口、微信官方个人支付接口、非二维码收款,非第四方清算。个人用户可提交资料开通微信支付商户,完成对接。
- IJPay:聚合支付,IJPay 让支付触手可及,封装了微信支付、QQ 支付、支付宝支付、京东支付、银联支付、PayPal 支付等常用的支付方式以及各种常用的接口。