An open API service indexing awesome lists of open source software.

awesome-java-zh

Java 编程语言的优秀框架、库和软件的精选列表
https://github.com/awesome-code-resources/awesome-java-zh

Last synced: 9 days ago
JSON representation

  • 项目

    • 数据库

      • requery - 现代,轻量级但功能强大的对象映射和SQL生成器。轻松映射或创建数据库,或从任何使用Java的平台执行查询和更新。
      • Querydsl - Typesafe统一查询。
      • ArangoDB - ArangoDB Java驱动程序。
      • Chronicle Map - 高效、内存中 (opt.持久化到磁盘) 、堆外键值存储。
      • eXist - NoSQL文档数据库和应用平台。(LGPL-2.1-only)
      • FlexyPool - 为最常见的连接池解决方案带来指标和故障转移策略。
      • HikariCP - 高性能JDBC连接池。
      • Jest - Elasticsearch REST API的客户端。
      • jetcd - 用于etcd的客户端库。
      • Jinq - 通过符号执行Java 8 Lambdas (在JPA或jOOQ之上) 进行类型安全数据库查询。
      • Leaf - 分布式ID生成服务。
      • MariaDB4j - MariaDB的启动器,不需要安装或外部依赖。
      • Modality - 具有数据库逆向工程功能的轻量级ORM。
      • OpenDJ - 为Java平台开发的符合LDAPv3的目录服务,为身份提供高性能、高可用性和安全的存储。
      • QueryStream - 使用类似流的API构建JPA标准查询。
      • QuestDB - 用于时间序列的高性能sql数据库。支持InfluxDB line协议、PostgreSQL wire协议和REST。
      • Redisson - 允许在Redis服务器上使用分布式和可扩展的数据结构。
      • Speedment - 利用Java 8的Stream API进行查询的数据库访问库。
      • Spring Data JPA MongoDB Expressions - 允许您使用MongoDB查询语言来查询您的关系数据库。
      • Xodus - 高度并发的无事务模式和符合ACID的嵌入式数据库。
      • CosId - 通用,灵活,高性能的分布式ID生成器。
      • Trino - 用于大数据的分布式SQL查询引擎。
    • 数据结构

      • Tape - 闪电般快速,事务性,基于文件的FIFO。
      • Big Queue - 基于内存映射文件的快速和持久队列。
      • HyperMinHash-java - 用于在日志空间中计算并集,交集和集合基数的概率数据结构。
      • Persistent Collection - Java集合框架的持久和不可变的模拟。
      • Protobuf - Google的数据交换格式。
      • RoaringBitmap - 快速和高效的压缩位图。
      • Wire - 干净,轻量级的协议缓冲区。
      • SBE - 简单的二进制编码,最快的消息格式之一。
    • 文档处理

      • documents4j - 使用第三方转换器 (如MS Word) 进行文档格式转换的API。
      • docx4j - 创建和操作Microsoft Open XML文件。
      • fastexcel - 高性能库读取和写入大型Excel (XLSX) 工作表。
      • zerocell - 基于注释的API,用于将数据从Excel工作表读取到pojo中,重点是减少开销。
    • 日志记录

      • Kibana - 分析和可视化日志文件。某些功能需要付款。
      • Logstash - 用于管理日志文件的工具。
      • Apache Log4j 2 - 完整的重写与强大的插件和配置架构。
      • Echopraxia - 围绕结构化日志记录,丰富的上下文和条件日志记录设计的API。有Logback和Log4J2实现,但echoprawia的API是完全无依赖关系的,这意味着它可以用任何日志API实现。
      • Logbook - 用于HTTP请求和响应日志记录的可扩展的开源库。
      • p6spy - 为所有JDBC事务启用日志记录,而无需更改代码。
      • OpenTracing Toolbox - 建立在OpenTracing之上的库集合,并为现有仪器提供扩展和插件。
      • Logback - 健壮的日志库,通过Groovy提供有趣的配置选项。
      • SLF4J - 抽象层/简单的日志记录外观。
    • 日期和时间

      • iCal4j - 解析和构建iCalendar[RFC 5545](https://tools.ietf.org/html/rfc5545)数据模型。
      • Jollyday - 确定给定年份,国家/地区和最终州/地区的假期。
      • ThreeTen-Extra - 补充JDK 8中的日期时间类。
      • Time4J - 先进的日期和时间库。(LGPL-2.1-only)
    • 服务器

      • Jetty - 提供Web服务器和javax.servlet容器,以及对HTTP/2,WebSocket,OSGi,JMX,JNDI,JAAS和许多其他集成的支持。
      • nanohttpd - 微小,易于嵌入的HTTP服务器。
    • 机器学习

      • oj! Algorithms - 数据科学,机器学习和科学计算所需的高性能数学,线性代数和优化。
      • Tribuo - 提供用于分类,回归,聚类,模型开发的工具以及与其他库 (如scikit-learn,pytorch和TensorFlow) 的接口。
      • Intelligent java - 以编程方式与远程深度学习和语言模型无缝集成。
      • JSAT - 用于预处理、分类、回归和聚类的算法,支持多线程执行。(GPL-3.0-only)
      • m2cgen - CLI工具将模型转换为本机代码。
      • Neureka - 一个轻量级的,平台独立的,OpenCL加速的nd阵列/张量库。
      • Oryx 2 - 用于构建实时,大规模机器学习应用程序的框架。包括用于协同过滤、分类、回归和聚类的端到端应用程序。
      • Siddhi - 云原生流和复杂事件处理引擎。
      • Smile
      • Intelligent java - 以编程方式与远程深度学习和语言模型无缝集成。
      • Deeplearning4j - 分布式和多线程深度学习库。
    • 杂项

      • Joda-Money - JDK未提供的基本货币和货币类和算法。
      • Svix - 用于Svix API的库,用于发送webhook并验证签名。
      • AWS SDK for Java 2.0 - 围绕aws的API进行包装。
      • CQEngine - Java集合上的超快速,类似SQL的查询。
      • Design Patterns - 最常见的设计模式的实现和解释。
      • FF4J - Java的功能标志。
      • FizzBuzz Enterprise Edition - 认真的商人为严肃的商业目的而制造的FizzBuzz的废话。(无明确许可)
      • IP2Location.io Java SDK - IP2Location.io地理位置API和IP2WHOIS域WHOIS API的包装器。
      • ISBN core - 一个小型库,其中包含ISBN-10和ISBN-13的表示对象以及用于解析,验证和格式化的工具。
      • J2ObjC - 用于将Android库移植到iOS的Java到objective-c转换器。
      • JBot - 构建聊天机器人的框架。(GPL-3.0-only)
      • JCuda - JCuda为CUDA和与CUDA相关的库提供Java绑定。
      • Jimfs - 内存文件系统。
      • jOOX - org.w3c.dom包的简单包装器,允许使用受jQuery启发的API进行流畅的XML文档创建和操作。
      • jsweet - 源转换器到TypeScript/JavaScript。
      • Maven Wrapper - Maven的Gradle包装器的模拟,允许在不安装maven的情况下构建项目。
      • MinimalFTP - 轻量级,小型和可定制的FTP服务器。
      • LittleProxy - 在Netty的基于事件的网络库之上的高性能HTTP代理。
      • Modern Java - A Guide to Java 8 - 流行的Java 8指南。
      • Modernizer - 检测遗留Java api的使用。
      • OctoLinker - 浏览器扩展,允许更有效地浏览GitHub上的代码。
      • PipelinR - 小型实用程序库,用于使用处理程序和带有管道的命令。
      • Polyglot for Maven - Maven 3.3.1的扩展,允许用XML以外的方言编写POM模型。
      • RR4J - RR4J是一个记录java字节码执行的工具,后来允许开发人员在本地重放。
      • Simple Java Mail - 邮寄一个干净和流畅的API。
      • Smooks - 基于片段的消息处理框架。(Apache-2.0或LGPL-3.0-or-later)
      • TypeTools - 用于解析泛型类型的工具。
      • XMLBeam - 通过在代码中使用注释或XPath来处理XML。
      • yGuard - 通过重命名和收缩混淆。
      • JPad - 片段赛跑者.
      • Membrane Service Proxy - 开源,反向代理框架。
    • 构建

      • Buck - 鼓励创建由代码和资源组成的小型可重用模块。
      • Bazel - 来自Google的工具,可快速可靠地构建代码。
      • Gradle - 通过Groovy而不是声明XML编程的增量构建。适用于Maven的依赖管理。
    • 模板引擎

      • Handlebars.java - 无逻辑和语义胡子模板。
      • Jade4J - 实施Pug (以前称为Jade)。
      • Jamal - 嵌入到Maven/JavaDoc中的可扩展模板引擎,支持多个扩展 (Groovy,Ruby,JavaScript,JShell,PlantUml),并支持代码段处理。
      • jstachio - Typesafe Mustache模板引擎。
      • jte - 编译为类,并使用简单的语法,几个功能,使开发更容易,并提供快速执行和占地面积小。
      • Jtwig - 模块化,可配置和完全测试的模板引擎。
      • Rocker - 优化,内存高效和快速的模板引擎产生静态类型,普通对象。
      • StringTemplate - 用于生成源代码,网页,电子邮件或任何其他格式化文本输出的模板引擎。
    • 流程

      • ch.vorburger.exec - 围绕Apache Commons Exec的便捷API。
      • zt-exec - 为Apache Commons Exec和ProcessBuilder提供统一的API。
      • zt-process-killer - 停止从Java启动的进程或通过PID的系统进程。
    • 测试

      • GreenMail - 用于集成测试的内存电子邮件服务器。支持SMTP,POP3和IMAP,包括SSL。(GPL-2.0-only)
      • JUnit - 通用测试框架。
      • Awaitility - 用于同步异步操作的DSL。
      • ConcurrentUnit - 用于测试多线程和异步应用程序的工具包。
      • GreenMail - 用于集成测试的内存电子邮件服务器。支持SMTP,POP3和IMAP,包括SSL。(GPL-2.0-only)
      • Hoverfly Java - Hoverfly的本机绑定,它允许您模拟HTTP服务的代理。
      • Karate - DSL结合了API测试自动化,模拟和性能测试,使测试REST/HTTP服务变得容易。
      • REST Assured - 用于轻松测试REST/HTTP服务的DSL。
      • WebTau - 使用一致的匹配程序和概念集,跨REST API,图形QL,浏览器,数据库,CLI和业务逻辑进行测试。
      • Cucumber - 提供了一种以客户可以理解的简单语言描述功能的方法。
      • Cukes-REST - 使用黄瓜进行REST服务测试的小黄瓜步骤集合。
      • J8Spec - 遵循类似茉莉花的语法。
      • Lamdba Behave - 旨在提供一个流利的API来编写测试长而描述性的句子,读起来像普通英语。
      • Serenity BDD - 自动验收测试和报告库,与黄瓜,j行为和JUnit的工作,使它更容易编写高质量的可执行规范。
      • Beanmother - 从YAML fixtures设置bean。
      • Datafaker - 从Java Faker分叉的现代假数据生成器。
      • Fixture Factory - 从模板生成假对象。
      • jFairy - 假数据生成器。
      • Instancio - 通过生成完全填充的,可重现的对象来自动执行单元测试中的数据设置。包括JUnit 5扩展。
      • Randomized Testing - JUnit测试运行器和插件,用于运行具有伪随机性的JUnit测试。
      • Java Faker - Ruby的假数据生成器的端口。
      • Mockneat - 另一个假数据生成器。
      • ArchUnit - 用于指定和断言架构规则的测试库。
      • AssertJ - 流利的断言,提高可读性。
      • JsonUnit - 简化测试中JSON比较的库。
      • XMLUnit - 简化了XML输出的测试。
      • ConsoleCaptor - 捕获用于单元测试目的的控制台输出。
      • junit-dataprovider - 用于JUnit的类似TestNG的数据提供程序/运行程序。
      • LogCaptor - 捕获用于单元测试目的的日志条目。
      • log-capture - 捕获日志条目并为单元和集成测试提供断言。
      • Mutability Detector - 报告给定类的实例是否不可变。
      • raml-tester - 测试请求/响应是否与给定的RAML定义匹配。
      • Selfie - 快照测试 (内联和磁盘上)。
      • TestContainers - 提供常见数据库、Selenium web浏览器或其他任何可以在Docker容器中运行的一次性实例。
      • JMockit - 集成测试,API模拟和伪造以及代码覆盖率。
      • Mockito - Mocking框架,让您使用干净简单的API编写测试。
      • Moco - 用于存根和模拟的简洁web服务。
      • PowerMock - 模拟静态方法,构造函数,最终类和方法,私有方法以及删除静态初始值设定项。
      • EasyMock - EasyMock是一个Java库,它提供了一种在单元测试中使用Mock对象的简便方法。
      • JUnit - 通用测试框架。
      • Pact JVM - 消费者驱动的合同测试。
      • pojo-tester - 自动对基本POJO方法执行测试。(LGPL-3.0-only)
    • 消息传递

      • Aeron - 高效,可靠,单播和多播消息传输。
      • Deezpatch - 用于解耦消息 (请求和事件) 和消息处理程序的简单,轻量级和高性能的调度库。
      • EventBus - 简单的发布/订阅事件总线。
      • JeroMQ - ZeroMQ的实现。
      • Nakadi - 在Kafka之上提供一个RESTful API。
      • RabbitMQ Java client - RabbitMQ客户端。
      • Smack
      • NATS client - NATS的客户.
      • AutoMQ - AutoMQ是一款云原生的无服务器Kafka,易于扩展,无需管理且具有成本效益。
    • 游戏开发

      • JBox2D - 著名的C 2D物理引擎的端口。
      • Litiengine - 基于AWT的轻量级2D游戏引擎。
      • FXGL
      • JBox2D - 著名的C 2D物理引擎的端口。
      • Void2D - 基于Swing的内置物理的高级2D游戏引擎。
    • 版本管理器

      • jabba - 受nvm启发的Java版本管理器。支持macOS,Linux和Windows。
      • jenv - 受rbenv启发的Java版本管理器。可以全局配置或按项目配置。在Debian和macOS上测试。
      • SDKMan - 受RVM和rbenv启发的Java版本管理器。支持基于UNIX的平台和Windows。
    • 监测

      • hippo4j - 动态和可观察的线程池框架。
      • Automon - 将AOP的功能与监视和/或日志记录工具相结合。
      • Dropwizard Metrics - 通过JMX或HTTP公开指标,并将其发送到数据库。
      • Failsafe Actuator - Spring-Boot环境中的故障安全断路器的开箱即用监控。
      • HertzBeat - 具有自定义监视器和无代理功能的实时监视系统。
      • Jaeger client - Jaeger客户.
      • JavaMelody - 性能监控和分析。
      • jmxtrans - 连接到多个jvm并通过JMX查询它们的属性。它的查询语言基于JSON,允许非Java程序员访问JVM属性。支持不同的输出写入,包括Graphite、Ganglia和StatsD。
      • Micrometer - 供应商中立的度量/可观察性外观,用于最受欢迎的度量/可观察性库。
      • Micrometer Tracing - 供应商中立的分布式跟踪facade,用于最流行的跟踪器库。
      • nudge4j - 通过字节码注入从Java 8浏览器远程开发人员控制台。
      • Prometheus - 提供多维数据模型,DSL,自治服务器节点等等。
      • Stagemonitor - JVM应用程序的开源性能监控和事务跟踪。
      • Sysmon - 用于Java vm的轻量级平台监控工具。
      • Pinpoint - 开源APM工具。
      • inspectIT - 通过钩子捕获详细的运行时信息,可以在飞行中更改。它支持通过OpenTracing API跟踪多个系统,并可以将数据与最终用户监控相关联。
    • 科学

      • BioJava - 通过提供生物信息学中常用的算法,文件格式解析器,测序和3D可视化,促进处理生物数据。
      • DataMelt - 科学计算,数据分析和数据可视化的环境。(GPL-3.0-or-later)
      • Orekit - 一个低级别的太空飞行动力学库,提供基本元素 (轨道,日期,姿态,帧...) 和各种算法 (转换,传播,指向...) 来处理它们。
      • Chart-FX - 科学图表库,重点是针对大型数据集以25 hz的更新速率进行性能优化的实时数据可视化。
      • Erdos - 用于理论算法的模块化,轻便和简单的图形框架。
      • JGraphT - 提供数学图论对象和算法的图库。
      • JGraphX - 用于可视化 (主要是摆动) 和与节点边图交互的库。
      • LogicNG - 用于创建,操作和解决布尔和伪布尔公式的库。
      • Mines Java Toolkit - 用于地球物理科学计算,可视化和数字信号分析的库。
      • Morpheus - 提供了一种通用的二维内存高效表格数据结构,称为DataFrame,以实现高效的内存分析,用于JVM上的科学计算。
      • Orson-Charts - 生成各种3D图表,可以使用Swing和JavaFX显示或导出为PDF,SVG,PNG和JPEG。(GPL-3.0-only)
      • Tablesaw - 包括一个数据框、一个嵌入式列存储以及数百种用于转换、汇总或过滤数据的方法。
      • XChart - 用于绘制数据的轻量级库。有许多可自定义的图表类型。
      • GraphStream - 用于建模和分析动态图的库。
      • JFreeChart - 用于Swing,JavaFX和服务器端应用程序的2D图表库。(LGPL-2.1-only)
    • 站台

      • Logging - 围绕各种日志API实现的包装。
      • RDF - 可以由JVM上的系统实现的RDF 1.1的常见实现。
      • RNG - Commons Rng提供伪随机数生成器的实现。
      • Spring - 提供了许多用于依赖注入,面向方面编程,安全性等的软件包。
      • Light-4J - 内置的快速,轻量级和高效的微服务框架[security](https://github.com/networknt/light-oauth2/)。