
jabref
写论文用的文献管理工具。这是一款免费开源、跨平台的文献与引用管理工具,原生支持 BibTeX/BibLaTeX。它可以从 Google 学术、arXiv 等平台检索论文,自动补全文献信息、提取 PDF 元数据、合并重复条目,并支持与 Word、LibreOffice 和多款 LaTeX 编辑器联动。

写论文用的文献管理工具。这是一款免费开源、跨平台的文献与引用管理工具,原生支持 BibTeX/BibLaTeX。它可以从 Google 学术、arXiv 等平台检索论文,自动补全文献信息、提取 PDF 元数据、合并重复条目,并支持与 Word、LibreOffice 和多款 LaTeX 编辑器联动。
开箱即用的 AWS 本地模拟器。这是一款免费、开源的 AWS 本地模拟器,帮助开发者在本地开发和测试 AWS 应用,它启动快、占用少、无需账号,仅需一条命令就能在本地启动 20 多种 AWS 服务的模拟环境。

在 Android 上运行 OpenClaw。该项目提供两种在 Android 手机上运行 OpenClaw 智能体平台(非客户端)的方式。可通过 Termux 安装 glibc 动态链接器直接部署 Linux 二进制文件,也可通过直接安装打包好的 Android 应用实现一键安装 OpenClaw,后者不需要安装 Termux。

开源的模型火箭模拟器。这是一款免费、开源的模型火箭(航模)仿真软件,支持模拟火箭的空气动力学性能和飞行轨迹,提供直观的火箭设计界面,可进行六自由度飞行模拟,在模拟过程中实时展示高度、速度、加速度等参数,适用于 Windows、Linux 和 macOS 平台。
直接运行 curl 命令的 Java 库。这是一款轻量级 HTTP 客户端 Java 库,可直接将 curl 命令转换为 Java 中可执行的 HTTP 请求逻辑,无需手动改写代码。适用于从 Chrome 浏览器开发者工具、API 文档等复制 curl 命令后,快速集成到 Java 项目中。来自 [@paohaijiao](https://hellogithub.com/user/iIaNjn0mSdwx6gv) 的分享```java import java.util.List;// 示例UserService接口定义public interface UserService {/*** 获取所有用户* @param req 请求参数载体* @return 所有用户列表*/@JCurlCommand("curl -X GET --location 'http://localhost:8080/api/users/all'")List all(JQuickCurlReq req);/*** 根据ID获取单个用户* @param req 请求参数载体* @return 单个用户信息*/@JCurlCommand("curl -X GET http://localhost:8080/api/users/1")JUser getUserById(JQuickCurlReq req);/*** 创建新用户(POST请求)* @param req 请求参数载体* @return 创建后的用户信息*/@JCurlCommand("curl -X POST http://localhost:8080/api/users/createUser \\\n" +"-H \"Content-Type: application/json\" \\\n" +"-d '{\"name\":\"John Doe\",\"email\":\"john@example.com\"}'")JUser users(JQuickCurlReq req);}```

Java 写的文字版宠物小精灵游戏。这是一款基于 Java 游戏开发框架 LibGDX 构建的终端文字版宠物小精灵游戏,通过 Unicode 盲文字符作为像素点渲染画面,支持对战机制和完整的单人剧情。
分布式系统课程配套实验框架。该项目是华盛顿大学专为分布式系统教学和学习而设计的 Java 框架,提供网络模拟、自动化测试和可视化调试等功能,帮助初学者从零实现一个具备容错、分片和事务性的 KV 存储系统,在实践中掌握分布式协议的实现原理。

自托管的个人足迹分析平台。这是一款采用 Java(Quarkus)和 PostGIS 构建的位置追踪和分析平台,可作为 Google Timeline 的开源替代品。它运行时占用内存低(40-100MB),提供自动行程检测、实时位置分享、多源数据导入、Immich 集成和 AI 问答助手等功能,支持 Docker 和 K8s 部署。
告别内存溢出的 Java 电子表格处理库。这是一个高性能、低内存占用的 Java 电子表格处理库,基于 Apache POI 做了优化和封装,通过流式读取有效避免处理大文件时的 OOM 问题。
开箱即用的 Java 应用镜像构建工具。该项目是 Google 开源的 Java 应用容器镜像构建工具,无需运行 Docker 或编写 Dockerfile 即可构建镜像,提供 Maven/Gradle 插件、Java 库和 CLI 多种使用方式,简化 Java 应用的容器化流程。

新一代客户关系管理系统。这是一款基于 Spring Boot 和 Vue.js 构建的 CRM(客户关系管理)平台,支持线索获取、商机跟进、合同签约等功能,并可通过集成 SQLBot 和 MaxKB 实现 AI 加持。

Java 开发的个人足迹分析平台。这是一款基于 Spring Boot 和 PostGIS 构建的个人位置追踪与分析平台,适用于记录自己的行动轨迹和地理位置信息。支持自动识别停留地点、分析出行路线、判断交通方式,并以时间轴+地图的方式展示。

灵活的测试报告生成工具。这是一款基于 Java 开发的测试报告工具,支持多种编程语言和测试框架,能够生成统一、详细的测试报告,涵盖测试结果明细、测试用例执行情况、测试覆盖率等。
在 K8s 上轻松部署 Kafka 集群。该项目能够帮助开发者在 K8s 或 OpenShift 上轻松部署和管理 Apache Kafka 集群,简化了 Kafka 集群的安装、配置、升级、扩展和监控等流程。

支持多语法的轻量级图表生成服务。这是一个支持多种文本描述生成图表的服务,提供统一 API 接口,支持数十种主流图表语法和格式,包括 PlantUML、Mermaid、Graphviz、C4、BlockDiag、BPMN、Excalidraw 等。

提升下载体验的 BT 反吸血工具。这是一款专为 BT(BitTorrent)用户设计的反吸血工具,能够自动识别并封禁只下载不上传、不受欢迎或异常节点(peer),支持 qBittorrent、Deluge、BiglyBT、BitComet 等主流 BT 客户端。

开源的数字取证工具。该项目是专为处理和分析数字证据而设计的数据取证工具,采用 Java 语言开发。支持根据文件系统时间戳、EXIF 信息、邮件收发时间、聊天记录等多维度生成可视化时间线,以及人脸识别、全文检索和生成报告等功能。

Java 开发的轻量级开源社区系统。这是一个基于 Spring Boot 和 Vue3 构建的开源自由社区系统,定位为轻量级的 Discourse。它完全开源、可二次开发,支持白名单邀请、自定义标签、实时通知等功能。
全能的计算机视觉 Java 库。该项目让开发者能够在 Java 虚拟机(JVM)直接调用如 OpenCV、FFmpeg、Tesseract 等常用的计算机视觉库,快速开发出实时图像分析、视频编解码、流式传输和 OCR 等功能模块。```java import org.bytedeco.opencv.opencv_core.*;import org.bytedeco.opencv.opencv_imgproc.*;import static org.bytedeco.opencv.global.opencv_core.*;import static org.bytedeco.opencv.global.opencv_imgproc.*;import static org.bytedeco.opencv.global.opencv_imgcodecs.*;public class Smoother {public static void smooth(String filename) {Mat image = imread(filename);if (image != null) {GaussianBlur(image, image, new Size(3, 3), 0);imwrite(filename, image);}}}```
像操作 XML 一样轻松读写 JSON。该项目为 Java 开发者提供类似路径查询的方式,能够轻松从复杂的 JSON 结构中提取数据,无需手动遍历即可定位目标节点。来自 [@塔咖](https://hellogithub.com/user/bzJpGyu0IanC6L7) 的分享```java String json = "...";Object document = Configuration.defaultConfiguration().jsonProvider().parse(json);String author0 = JsonPath.read(document, "$.store.book[0].author");String author1 = JsonPath.read(document, "$.store.book[1].author");```

可视化拖拽的数据流管理平台。这是一个基于流程编程理念的数据流管理系统。它提供可视化的 Web 管理界面,支持数据溯源、断点续传、弹性扩展和丰富的处理器。用户可以像画流程图一样设计、控制和监控各系统间的数据流动,适用于数据湖、实时风控、AI 数据管道等场景。

Java 开发的个人数字图书馆。这是一款开源、自托管的电子书管理 Web 应用,支持 PDF 和 ePub 电子书格式。它采用 Java(Spring Boot)+ Angular 开发,支持自动获取书籍信息、分享书籍、阅读进度同步、多用户管理等功能。

开源的策略类卡牌游戏。这是一款为《万智牌》玩家打造的开源规则引擎和模拟器,玩法类似炉石的卡牌游戏。它提供单人冒险、任务、多种 AI 对战模式,支持在线对战、自定义卡牌和扩展功能,兼容 Windows、macOS、Linux 和 Android 平台。

Android 的卡券随身管家。这是一款开源免费的 Android 应用,专为管理和存储会员卡、优惠劵和票据信息而设计。它内置条形码扫描器,支持将各种实体卡片的条形码或二维码数字化,保存在手机中,从而无需携带实体卡片。

键盘控制鼠标的工具。这是一个 Java 编写的键盘控制鼠标工具,支持多种导航模式和多屏环境,让用户能够完全用键盘控制鼠标,实现无鼠标的高效操作。
快速生成假数据的 Java 库。这是一个专为 JVM 生态(Java、Kotlin、Groovy)设计的假数据生成库,是 java-faker 的开源分支。它内置近 50 种语言和地区支持,能够生成多种类型和格式的假数据,包括地址、姓名、日期、电话号码等。来自 [@塔咖](https://hellogithub.com/user/bzJpGyu0IanC6L7) 的分享```java Faker faker = new Faker();String name = faker.name().fullName(); // Miss Samanta Schmidt String firstName = faker.name().firstName(); // Emory String lastName = faker.name().lastName(); // Barton String streetAddress = faker.address().streetAddress(); // 60018 Sawayn Brooks Suite 449```

让 AI 自动操作 Ghidra 进行逆向。该项目是为 Ghidra(知名逆向工具)提供 MCP 支持,实现 AI 自动调用 Ghidra 进行逆向分析。它将 Ghidra 的核心功能(如反编译和二进制分析)以服务形式开放给 MCP 客户端,支持自动重命名方法和数据,列出方法/类等信息,打通了 AI 与逆向分析自动化的通路。

Java 反序列化漏洞的攻击工具。这是一个专门生成利用 Java 反序列化漏洞载荷(payload)的工具,用于测试和验证 Java 应用程序中的反序列化漏洞。它通过将用户指定的命令封装到特定的 gadget chain 中,并将其序列化为字节流,从而在目标 Java 应用程序中执行指定命令。

开源的数字电路设计与模拟软件。这是一款 Java 开发的数字逻辑电路设计与模拟工具,适用于教育和开发场景。它提供直观的界面,支持实时模拟电路行为、信号时序图、硬件集成、VHDL、常用组件和多语言。

模拟患者人群的开源工具。这是一款开源的合成患者数据和健康记录的模拟器,支持生成病历、症状、诊断、药物、疫苗接种记录等多种医疗信息数据,适用于临床研究、流行病学研究等场景。
开箱即用的 Spring Boot 操作日志组件。这是一个为 Spring Boot 项目设计的操作日志组件,支持通过注解的方式,轻松记录业务操作日志,包括操作人、操作时间、操作内容等。来自 [@FangPengbo](https://hellogithub.com/user/WtxAwC6DlVhTEJO) 的分享```java@LogRecord(fail = "创建订单失败,失败原因:「{{#_errorMsg}}」",success = "{{#order.purchaseName}}下了一个订单,购买商品「{{#order.productName}}」,测试变量「{{#innerOrder.productName}}」,下单结果:{{#_ret}}",type = LogRecordType.ORDER,bizNo = "{{#order.orderNo}}")public boolean createOrder(Order order) {log.info("【创建订单】orderNo={}", order.getOrderNo());// db insert order Order order1 = new Order();order1.setProductName("内部变量测试");LogRecordContext.putVariable("innerOrder", order1);return true;}```

Java 的 Word 模板引擎。该项目是基于 Apache POI 的 Word 模板引擎,可以动态生成 Word 文档。它提供了友好的 API,支持文本、图片、表格、条件渲染、图表等多种内容的渲染,适用于批量生成合同、报告、通知、证书等场景。```java XWPFTemplate template = XWPFTemplate.compile("template.docx").render(new HashMap(){{put("title", "HelloGitHub");}});template.writeAndClose(new FileOutputStream("output.docx"));```

Java 性能分析工具。这是一个低开销的 Java 采样分析器,可用于对 Java 应用进行性能分析。它能够帮助开发者追踪 CPU 消耗的热点代码路径、定位内存泄漏,以及分析线程锁争用和线程间的同步等问题。
强大的 Java 代码解析库。这是一个纯 Java 实现的解析库,专为解析、分析和生成 Java 代码而设计。它能够将 Java 代码解析为抽象语法树(AST),支持从 Java 1.0 到 Java 21 版本。可用于开发代码分析工具、重构工具、编译器等。

事件驱动的声明式编排平台。这是一个基于 Java 开发的事件驱动编排平台,旨在简化计划性和事件驱动工作流。它提供直观的 Web 界面,内置代码编辑器和数百个插件,用户可以通过 YAML 代码轻松构建可靠的工作流,支持编排微服务、批处理任务、临时脚本、SQL 查询、数据同步等多种任务。

开源的 Android 虚拟定位应用。该项目是一个基于 Android 调试 API 和百度地图实现的虚拟定位工具,无需 ROOT 权限即可修改地理位置。它支持位置搜索和手动输入坐标,并提供了一个可自由移动的摇杆来模拟位移。

开源的 API 自动测试框架。这是一款基于 Java 的 API 测试框架,可与 Spring Boot、Maven 等 Java 生态系统无缝集成。它整合了 API 测试自动化、模拟、性能测试和 UI 自动化等功能,支持使用类似 Cucumber 的语法编写测试用例,并提供了一个跨平台的可执行文件,即使对 Java 不熟悉也能轻松上手。

高效灵活的开源路线规划引擎。该项目是用 Java 开发的高性能路径规划引擎,能够快速计算两点或多点之间的距离。它支持 Dijkstra、A* 和收缩层级(CH)等算法,可以作为 Java 库或 Web 服务使用。基于 OpenStreetMap 地图数据,可实现汽车、自行车、步行等多种交通方式的路线规划和导航服务。

在 Android 上玩 J2ME 游戏。这是一款 Android 的 J2ME 模拟器,支持大多数 2D 和 3D 游戏。它内置虚拟键盘,适用于 Android 4.0+ 系统。

帮助开发 AI 应用的 Spring 框架。这是由 Spring 官方开源的用于简化包含 AI 功能的应用开发的 Java 框架,它可以轻松接入 OpenAI、Microsoft、Amazon、Google 和 Huggingface 等主流模型供应商,以及聊天、文本生成图像的模型类型,支持提示工程、AI 模型转 POJO 对象、矢量数据库、RAG(检索增强生成)等有助于开发 AI 应用的功能。

开源的代码抄袭检测工具。这是一个用于检测源代码相似度的工具,支持 Java、C/C++、Python、JavaScript 等多种编程语言,适用于识别编程作业中的抄袭行为等场景。

跨平台的开发者工具箱。这是一款用 Java 开发的开发者常用工具的桌面应用,支持 Windows、macOS 和 Linux 系统。它为开发者提供了多种实用工具,如文本转换、时间处理、JSON 格式化和正则匹配测试等。

为你的云端文件“上锁”的工具。这是一款开源的云存储文件加密工具,支持 Dropbox、OneDrive 等主流云存储服务。它简单易用、跨平台、无需注册,采用 AES-256 加密上传至云存储的文件和目录,适用于需要备份数据至云端,又担心数据泄漏的场景。

直接编辑 JAR 文件的 IDEA 插件。这是一款 IntelliJ IDEA 插件,让你无需解压即可直接编辑 JAR 文件中的 class 和资源文件。它支持添加、删除、重命名 JAR 包内的文件和目录,并提供了搜索和复制 JAR 包内容等功能,兼容 SpringBoot 和 Kotlin 项目。

Minecraft 游戏的 Android 启动器。该项目可以让你在 Android 上玩 Minecraft(我的世界),提供了离线和多人联机模式。它支持几乎所有版本的 Minercraft,还可以安装 Forge、Fabric 和 OptiFine 等模组和加载器。
Spring 源码阅读。这是一份讲解 Spring 源码的图文教程,内容涵盖了 Spring 框架的核心概念和关键功能,而且还贴心地标注了难度等级,更加便于学习。

一键远程登录 Docker 实例的工具。该项目是用于管理远程服务器的桌面工具,它会在 SSH 连接到服务器后,自动检测服务器环境和 shell 类型,实现一键登录各种容器实例(Docker、LXC、WSL),并支持远程文件管理和工具集成等功能。

Android 手机上的代码编辑器。这是一款专为 Android 设备设计的代码编辑工具,它是轻量级的 Web IDE,具有即时预览、控制台和丰富的插件等特点,支持 HTML、Python、Java、JavaScript 等多种编程语言。

私有部署的云端双链笔记软件。这是一个支持私有部署的云端存储双链笔记软件,可以将你的所有笔记、图片、个人计划安排保存在私有服务器上,并实现跨设备的实时同步。它提供 Markdown 编辑、双链笔记、全量备份、网页转换、多账号权限和统计等功能,兼容 Windows、macOS 和网页客户端。
解析 SQL 语句的 Java 库。该项目可以读取 SQL 语句,并分解成结构化的 Java 对象,实现用 Java 代码解析或动态生成 SQL 语句,支持 SQL 标准和主流的关系型数据库。```java String sqlStr = "select 1 from dual where a=b";PlainSelect select = (PlainSelect) CCJSqlParserUtil.parse(sqlStr);SelectItem selectItem =select.getSelectItems().get(0);Assertions.assertEquals(new LongValue(1), selectItem.getExpression());Table table = (Table) select.getFromItem();Assertions.assertEquals("dual", table.getName());EqualsTo equalsTo = (EqualsTo) select.getWhere();Column a = (Column) equalsTo.getLeftExpression();Column b = (Column) equalsTo.getRightExpression();Assertions.assertEquals("a", a.getColumnName());Assertions.assertEquals("b", b.getColumnName());```

企业级数据库协同开发平台。该项目是提供数据库协同开发和数据管理的平台,专为提升 SQL 开发效率而设计。它基于 Spring Boot 和 Electron 构建,提供了 Web 和桌面客户端,支持 SQL 规范检查、变更回滚、数据生命周期管理、数据脱敏和操作审计等功能,兼容 OceanBase、Oracle、MySQL 和 Doris 等多种数据源。

免费、开源的人脸识别系统。该项目提供了用于人脸识别、检测、验证、头部姿势检测、性别和年龄识别的 REST API 服务,不用懂机器学习就能轻松集成到任何系统中。它后端采用 Java 编写,人脸识别是基于 FaceNet 和 InsightFace 实现,同时支持 Docker 部署。

免费、开源的 Android 应用商店。该项目是 F-Droid 的 Android 客户端,专门收集各类开源安卓软件(FOSS)的应用商店。它里面大部分是免费且无广告的应用,如遇到资源加载慢的情况,可通过设置镜像源解决。
用于追踪数据历史记录和审计的 Java 库。该项目是将版本管理的想法应用于数据(Java 对象)变更管理的 Java 库,它支持查看复杂的对象结构差异,保留修改数据的历史记录,并能追踪对象变化。
Spring 全家桶源码解读。该项目提供了一系列互联网主流框架和中间件的源码讲解,包括 Spring 全家桶、Mybatis、Netty、Dubbo 等框架。

在 Android 上运行 Windows 游戏的模拟器。这是一个 Android 应用,可以让你使用 Wine 和 Box86/Box64 来运行 Windows 应用和游戏,实现在手机上畅玩各种经典的 PC 游戏。

探索 Java 处理 10 亿行文本的最快速度。这是一个有趣的 Java 编程挑战,要求开发者编写一个 Java 程序,读取包含多个气象站温度值的文件(10 亿行),然后计算每个气象站的最小、平均和最大值,最后按照站点名称排序后输出,现在最快速度为 2 秒。

一款真正的云原生 Kafka 解决方案。该项目是基于云原生重新设计的新一代 Kafka 发行版。在保持和 Apache Kafka 100%兼容前提下,AutoMQ 可以为用户提供高达 10 倍的成本优势以及百倍的弹性优势,同时支持秒级分区迁移和流量自动重平衡,解决运维痛点。

优化 Spring 应用启动性能的工具。该项目利用采集 Spring 应用启动过程数据,生成交互式分析报告,为开发者提供了分析 Spring 应用启动性能的工具。其主要功能包括分析启动卡点、处理 Spring Bean 异步初始化,以及显示应用未加载的 jar 包、方法调用次数和耗时统计等详细信息。

用于过滤敏感词的 Java 库。该项目是基于 DFA 算法实现的高性能敏感词过滤工具,词库收录了 6w+ 内容,支持自定义敏感词、白名单、替换策略、数字常见形式的互换、忽略重复词等功能。
Java 的短信服务聚合框架。该项目集成了国内众多第三方短信服务,简化了接入多个短信 SDK 的流程,仅通过修改配置文件,就能轻松实现发送短信的功能。来自 [@ヽ米 饭](https://hellogithub.com/user/H1xr8NVzI52Kg9L) 的分享```java@RestController@RequestMapping("/test/")public class DemoController {// 测试发送固定模板短信@RequestMapping("/")public void doLogin(String username, String password) {//阿里云向此手机号发送短信SmsFactory.createSmsBlend(SupplierType.ALIBABA).sendMessage("18888888888","123456");//华为短信向此手机号发送短信SmsFactory.createSmsBlend(SupplierType.HUAWEI).sendMessage("16666666666","000000");}}```
SpringBoot 接口优雅响应处理器。该项目通过注解的方式,优化 Controller 层的代码,完成统一返回值封装、全局异常处理、异常与错误码映射等功能。```java public class Controller {@GetMapping("/query")@ResponseBody public Data query(Parameter params) {Data data = service.query(params);return data;}}```
极简的 Java Web 框架。该项目是作者手撸的 Java Web 框架,它简约、零依赖、具有良好的性能,内置数据库、Web 服务器、模版引擎、日志等功能。如果你是一个 Java 新手,而且经常在各大 Web 框架中“迷失方向”,那你可以通过这个项目,快速上手 Web 开发并理清头绪。```java package org.example.myproject;import com.renomad.minum.web.*;public class Main {public static void main(String[] args) {// Start the system FullSystem fs = FullSystem.initialize();// Register some endpoints fs.getWebFramework().registerPath(RequestLine.Method.GET,"",request -> Response.htmlOk("Hi there world!"));fs.block();}}```

专注批量推送的小工具。该项目是用 Java 写的批量推送桌面工具,支持自定义消息、预览消息、批量导入用户、多账号管理、定时推送等功能,目前已支持公众号模板消息、企业微信、微信客服、短信、邮件等消息类型。
一个用 Java 实现的算法和数据结构的集合。算法和数据结构的重要性无需多言,该项目提供了常见的数据结构和算法最简单、优雅的 Java 代码实现,不管是用于学习还是开发都是不错的选择。

允许对 PDF 文件做各种操作的 Web 应用。这是一款功能强大、开箱即用的 PDF 工具,支持拆分/合并文件、添加/提取图片、压缩、加水印、添加/删除密码等功能,满足你对 PDF 文件的所有需求。

一款强大的数据库提取数据工具。用于数据库子集和关系数据浏览的工具,支持按照表之间关系浏览数据库、生成 DML 拓扑关系等功能。可用来从生产数据库中提取出,支持测试一条完整业务线所需的数据库表和数据。

一款简约的 Android 记账应用。这是一款支持自定义支出/收入分类、定时提醒、预算设置、花费统计等功能的记账 APP。

一款 Java 的回合制战争游戏。这是一款免费、开源的战争棋盘类游戏,玩家可以在游戏中模拟第二次世界大战、拿破仑战争等经典战役,支持 Windows、Linux 和 macOS 操作系统。

强大的语法分析器生成工具。简洁的 ANTLR 语法能够构造一个词法分析器和语法分析器,将一份文件生成 10 余种目标语言代码(Java/C++/Python 等),多用于文本解析、配置文件读取器、遗留代码转换器、JSON 解析器等。```grammar Expr;prog: (expr NEWLINE)* ;expr: expr ('*'|'/') expr| expr ('+'|'-') expr| INT| '(' expr ')';NEWLINE : [\r\n]+ ;INT : [0-9]+ ;```

你的第一款 Java 游戏开发框架。该项目是基于 JavaFX 的 2D 游戏开发引擎,它无需安装、API 简单,能够轻松地将开发的游戏打包成一个可执行的 jar 包,一切的一切都是为了让你喜欢上开发游戏。```java public class BasicGameApp extends GameApplication {@Override protected void initSettings(GameSettings settings) {settings.setWidth(800);settings.setHeight(600);settings.setTitle("Basic Game App");}public static void main(String[] args) {launch(args);}}```

功能强大的调查问卷系统。这是一款 Java 写的问卷调查和考试系统,支持 20 多种题型、Excel 导入问卷、白名单答卷、公开查询、数据导出等功能。

一个全响应式的企业级物联网平台。基于 Spring Boot 开发的一款开箱即用、可二次开发的企业级物联网基础平台。支持不同设备的统一接入、规则模型配置、数据权限控制等功能。

纯字符 3D 画面的空战游戏。这是一款采用 Java Swing 开发的基于小孔成像原理与图形光栅化的字符 3D 画面框架构建的空战游戏,简单说就是作者为了做个 3D 字符空战游戏,顺手写了个 3D 引擎,别人的本科毕设。

一款 Java 写的内部培训系统。这是一款基于 SpringBoot+React 开发而成的视频培训系统,它界面清爽、交互流畅,支持上传资源、创建部门、添加学员、指派课程等功能,可用于企业和机构搭建内部培训平台。

浏览器上的电子电路模拟器。这是一个在浏览器中运行的电子电路模拟器,鼠标点击即可打开或关闭开关,当鼠标移动到任何组件上,会显示该组件的当前状态和简短描述。支持绘制电路、添加电路组件、修改数值、动态显示电压信号、导入/导出/存储等功能,可用于电子电路相关的教学和实验。

无侵入的线上流量录制/回放平台。这是一款由 vivo 开源的基于 jvm-sandbox-repeater 的流量回放平台,提供了数据统计和存储能力以及大量插件,适用于自动化测试、线上问题追踪和业务监控等场景。
获取操作系统和硬件信息的 Java 库。这是一个基于 JNA 实现的获取本机操作系统和硬件信息的库,支持操作系统版本、进程、内存、 CPU 使用率、磁盘和分区、设备、传感器等信息。

Android 的图片内存分析工具。它可以帮助开发者快速发现应用内加载的图片是否合理,比如大小是否合适、缓存是否及时清理、是否加载了当前并不需要的图片等等,支持在线下和线上使用。

汽车之家开源的监控平台。采用 SpringBoot+MyBatis+XXL-JOB 构建的监控系统,支持接入 ES、HTTP、Prometheus、MySQL/TiDB 等多种数据源,以及钉钉、飞书、短信等多种报警消息发送方式。

一个 Java 的 BitTorrent 库。支持 DHT、磁力链接、加密等功能的 Java 库,可以根据自己的喜好开发和定制 BT 工具,比如播种、下载种子等。```java// Create a torrent Path torrentRoot = Paths.get("/home/torrents/mytorrent");Path file1 = Paths.get("/home/torrents/mytorrent/file1.bin");Path file2 = Paths.get("/home/torrents/mytorrent/file2.bin");Path dirToAdd = Paths.get("/home/torrents/mytorrent/dir_with_files");byte[] torrentBytes = new TorrentBuilder().rootPath(torrentRoot).addFiles(file1, file2, dirToAdd).announce("http://example.com/announce").build();Files.write(Paths.get("/home/torrents/mytorrent.torrent"), torrentBytes);```
更好用的 Java 压缩位图数据结构。位图常用于大数据集的快速查找和去重,该项目提供的 RoaringBitmap 是一种压缩位图,相较于传统的位图数据结构,它更快、更节省内存,而且久经沙场值得信赖,比如 Spark、Hive 等知名项目上都有它的身影。```java import org.roaringbitmap.RoaringBitmap;public class Basic {public static void main(String[] args) {RoaringBitmap rr = RoaringBitmap.bitmapOf(1,2,3,1000);RoaringBitmap rr2 = new RoaringBitmap();rr2.add(4000L,4255L);rr.select(3); // would return the third value or 1000 rr.rank(2); // would return the rank of 2, which is index 1 rr.contains(1000); // will return true rr.contains(7); // will return false RoaringBitmap rror = RoaringBitmap.or(rr, rr2);// new bitmap rr.or(rr2); //in-place computation boolean equals = rror.equals(rr);// true if(!equals) throw new RuntimeException("bug");// number of values stored?long cardinality = rr.getLongCardinality();System.out.println(cardinality);// a "forEach" is faster than this loop, but a loop is possible:for(int i : rr) {System.out.println(i);}}}```

云原生安全检测平台。该项目用非侵入的方式,解决云原生环境的安全和治理问题。支持主流公/私有云资源的安全检测、漏洞扫描、一键获取报告等功能。

开源的智能移动云测平台。这是一个基于 Spring Boot+React 构建的云测服务,它部署简单开箱即用,支持在线管理测试设备、执行测试用例、测试结果可视化等功能。

目前最流行的图数据库。它是一款采用 Java 和 Scala 语言开发的原生图数据库,专属的查询语言 Cypher,能够直观且高效地查询和处理数据之间的关系。

一款在线制作报表的工具。该项目可通过在线拖拽制作报表,支持报表设计、图形报表、大屏展示等功能。

一款开源的 Kafka 管理平台。由开源社区建立和维护的 Kafka Web UI 管理工具,承诺永久免费。可方便地查看 Kafka Brokers、Topics、消息、Consumer 等情况,支持多集群管理、性能监控、访问控制等功能。

刷 LeetCode 的 IDE 插件。让你可以在 IDE 里刷 LeetCode 算法题的插件,支持 IntelliJ IDEA、PyCharm、GoLand 在内的 Jetbrains 全家桶。

一款支持多种格式的 Android 电子书阅读器。适用于 Android 设备的阅读应用,支持最流行的文档格式,包括 PDF、EPUB、MOBI、DjVu、FB2、TXT、RTF、AZW、HTML、CBZ、DOC 等多种电子书格式。

一款免费、安全、开源的 2FA 安卓应用。双重认证(2FA) 就是使用两种不同的元素来确认用户身份,比如用户名和密码是一种元素,手机号和短信验证码也是一种元素,两种元素结合就是双重认证。除了短信之外还有一种 APP 可生成和验证码功能类似的一次性密码(TOTP),Aegis 就是一款支持 HOTP 和 TOTP 算法的开源 2FA 应用,使用时要先将手机和账号绑定,绑定后 APP 就会定时刷新一组随机数字,需要双重认证时输入这串数字即可。

一款由 Java 编写的开源持续集成工具。做为开源 CI/CD 软件的王者,它专注于自动化你的开发工作流程,具有安装简单、友好的操作页面、易于扩展、分布式的特点,常用来优化项目开发流程或自动化各种任务。```shell 1. 下载 jar 包2. 运行:java -jar jenkins.war --httpPort=8080 3. 打开浏览器访问:http://localhost:8080 4. 根据提示完成安装```

开箱即用的网络视频平台。基于 GB28181 标准实现的网络视频平台,能够接入摄像机、平台、NVR 等设备、支持视频预览、云台控制、录像查询和回放、无人观看自动断流等功能。

从零开发 Android 天气 APP。该项目介绍了如何开发一款支持天气预报、城市搜索、空气质量、自动更新等功能的 Android 应用,内含源码和配套讲解博文。

一种 JVM 的非侵入式运行期 AOP 解决方案。简单点说就是如果线上 Java 服务出现故障,需要加一条日志定位问题,通过该项目可以在不重新部署服务的情况下,完成增加日志的操作。它还支持线上故障模拟、请求录制和结果回放等功能。

腾讯开源的一站式微服务解决方案。基于 Spring Cloud 的服务治理框架,提供了微服务领域常见的服务注册与发现、配置中心、服务路由、限流熔断以及元数据链路透传等能力。

Java 的高性能缓存库。借鉴了 Guava 和 ConcurrentLinkedHashMap 的设计经验,青出于蓝而胜于蓝的 Java 本地缓存库,拥有更高的缓存命中率和更快的读写速度。```java LoadingCache graphs = Caffeine.newBuilder().maximumSize(10_000).expireAfterWrite(Duration.ofMinutes(5)).refreshAfterWrite(Duration.ofMinutes(1)).build(key -> createExpensiveGraph(key));```

一款免费开源的软件逆向分析工具。该项目由美国国安局开源,可用于分析编译后的代码。
带有监控报警功能的动态线程池框架。支持运行时动态变更线程池参数,可实时查看线程池运行时数据,适配 RocketMQ、RabbitMQ、Tomcat 等中间件,解决了线程池参数不易评估以及运行时黑盒的问题。```java@Bean@DynamicThreadPool public Executor sendMessageConsumeDynamicThreadPool() {String threadPoolId = "send-message-consume";ThreadPoolExecutor sendMessageConsume = ThreadPoolBuilder.builder().threadPoolId(threadPoolId).threadFactory(threadPoolId).dynamicPool().build();return sendMessageConsume;}```
一款 Java 轻量级应用开发框架。可用来快速开发 Java Web 项目,主框架仅 0.1 MB。类似 Python Flask 的微型框架,提倡按需组合插件。```java@Controller public class App {public static void main(String[] args) {Solon.start(App.class, args, app -> {//手写模式app.get("/hello1", ctx -> ctx.output("Hello world!"));});}//注解模式@Get@Socket@Mapping("/hello2")public String hello2(@Param(defaultValue = "world") String name) {return String.format("Hello %s!", name);}}```

高性能的分析数据库。一个基于 MPP 架构的高性能、实时的分析型数据库,尤其是在海量数据和高并发场景下表现优异。目前,在众多知名企业中均有使用,可用来构建用户分析、日志检索分析、用户画像等应用。

从文本描述生成 UML 图的工具。该项目可根据简单的文字描述画出 UML 图,支持顺序图、用例图、时序图等,除此之外还支持架构图、甘特图、思维导图、实体关系图等非 UML 图。支持在线、命令行、桌面应用等多种使用方式,可根据情况自行选择。```java -jar plantuml.jar 文本文件将得到一个同名的 png 文件```
极简的声明式 Java HTTP 客户端。一个开源的 Java HTTP 客户端框架,采用声明式的开发方式,分分钟即可完成 HTTP 请求的定义、发送、接收、解析、错误处理、日志打印等操作。```java public interface AmapClient {/*** @Get注解代表该方法专做GET请求* 在url中的{0}代表引用第一个参数,{1}引用第二个参数*/@Get("http://ditu.amap.com/service/regeo?longitude={0}&latitude={1}")Map getLocation(String longitude, String latitude);}// 注入接口实例@Autowired private AmapClient amapClient;...// 调用接口Map result = amapClient.getLocation("121.475078", "31.223577");System.out.println(result);```

轻快、稳定可编排的规则引擎。规则引擎能够帮助系统解耦,实现通过修改规则就可以适应复杂多变的业务逻辑。这是一个功能强大的 Java 规则引擎,支持同步异步混编、平滑热刷新,无需重启应用即可让新规则生效,规则语法简单、文档通俗易懂,学习门槛低容易上手。

构建 Java 命令行应用的框架。简单易用寥寥几行代码,就可以完成一个 Java 命令行应用程序。虽然由 Java 编写但可以在 Groovy、Kotlin、Scala 中使用,支持命令自动补全、颜色、子命令、帮助信息等功能。```java import picocli.CommandLine;import picocli.CommandLine.Option;import picocli.CommandLine.Parameters;import java.io.File;@Command(name = "example", mixinStandardHelpOptions = true, version = "Picocli example 4.0")public class Example implements Runnable {@Option(names = { "-v", "--verbose" },description = "Verbose mode. Helpful for troubleshooting. Multiple -v options increase the verbosity.")private boolean[] verbose = new boolean[0];@Parameters(arity = "1..*", paramLabel = "FILE", description = "File(s) to process.")private File[] inputFiles;public void run() {if (verbose.length > 0) {System.out.println(inputFiles.length + " files to process...");}if (verbose.length > 1) {for (File f : inputFiles) {System.out.println(f.getAbsolutePath());}}}public static void main(String[] args) {// By implementing Runnable or Callable, parsing, error handling and handling user// requests for usage help or version help can be done with one line of code.int exitCode = new CommandLine(new Example()).execute(args);System.exit(exitCode);}}```

Minecraft 游戏机器人 。它可以帮你自动完成寻路、采集矿石等操作。

Java 开发的实时应用监控平台。美团开源的实时监控告警服务,能够帮助开发者快速定位线上的问题。功能丰富包括全量采集指标数据、分布式跨机房部署、性能分析报表等,还支持多种编程语言客户端。```Cat-client:提供给业务以及中间层埋点的底层 SDK Cat-consumer:用于实时分析从客户端提供的数据Cat-home:作为用户给用户提供展示的控制端```

奈飞开源的自适应限流库。当服务在面对高并发处理不过来的时候,通常会采用限流的方式来保证服务可以正常运行,但限流的阈值很难精准把控,设置小了会损失流量、大了又容易搞挂服务。该项目基于 TCP 拥塞控制算法,实现了自适应并发限制,即自动设置最佳限流阈值,从而能够在保证服务稳定的前提下,尽可能多地处理请求。```java// Create and configure a server builder ServerBuilder builder = ...;builder.addService(ServerInterceptor.intercept(service,ConcurrencyLimitServerInterceptor.newBuilder(new GrpcServerLimiterBuilder().partitionByHeader(GROUP_HEADER).partition("live", 0.9).partition("batch", 0.1).limit(WindowedLimit.newBuilder().build(Gradient2Limit.newBuilder().build())).build();));```

高效的离线数据同步工具。阿里开源的数据同步框架,可用于解决各种主流关系数据库、HDFS、HBase 等数据源之间的数据同步问题。

捕获数据更改(CDC)的流式处理平台。可以监控数据库中的数据变动,把每一个行级别的数据改动,通过流的方式实时同步给其他服务。适用于更新缓存、更新搜索、双写等场景

易用友好的云监控系统。适用于应用服务、数据库、网站、API、操作系统等监控的场景,可以帮助中小型团队快速搭建监控系统

Java 字节码浏览器。支持可视化操作、查看、编辑编译好的 Java 类文件的开发工具

开箱即用的权限管理系统。基于 SpringBoot 开发的后台管理系统,包含用户管理、部门管理、角色管理、登录日志、定时任务、服务监控等功能,可以用来快速构建 CMS、CRM、OA 等系统

一套开源的分布式数据库增强计算引擎。可将多种数据库转换为分布式数据库的生态系统,就是把多种不同类型的数据整合成对外是一个整体的数据库,即化零为整。充分合理地利用数据库的计算和存储能力,解决数据分片、数据加密、异构数据查询等痛点

一款数据库模型文档管理平台。支持自动同步数据库元数据并生成文档,解决数据模型文档管理中的内容更新不及时等问题
轻量级 Java 依赖注入框架。不需要大量的模版代码,即可编写依赖注入的代码。使开发和调试更容易、更快速,适合个人开发者在小项目中使用```java import javax.inject.Inject;import com.google.inject.Guice;import com.google.inject.Injector;import com.google.inject.Module;public class Main {@Inject private HelloWorldService service;//hello service public static void main(String[] args) {Main main = new Main();Module module = new HelloWorldModule();Injector injector = Guice.createInjector(module);injector.injectMembers(main);//injects the implementation of the service main.testGuice();}public void testGuice(){service.sayHello();//usage of the service}}```

监控 Java、Java Web 应用程序的工具。监控包含 HTTP 请求、SQL 耗时、方法执行次数、错误百分比、Java 内存等指标,支持自定义时间维度和导出报告

一款免费、开源的多人在线冒险(MMORPG)游戏。项目采用 Java 语言编写,虽然游戏画面复古还是 2D 但拥有数百种物品、怪物、NPC、任务和自由交易组成的丰富世界。玩家可以通过完成任务得到经验和金钱,更新装备逐渐变强探索更多新的地图。该游戏从 2005 年开源持续维护至今,[在线试玩](https://stendhalgame.org/client/stendhal.html)

Flink/Spark 极速开发框架,一站式流数据处理平台。提供开箱即用的流式大数据开发体验,可在平台上统一管理配置、开发、测试、部署、监控、运维的整个过程

运行于 Android 操作系统的钩子框架。支持 Android 8 以上,能够拦截几乎所有 Java 函数的调用,从而可被用来修改 Android 系统和软件的功能

开源的身份验证方案。为你的应用轻松增加登录、会话管理等功能,支持自行搭建服务。可用作 Auth0 的开源替代品

展示 Java 和 Kotlin 语法上差别的项目。让有 Java 基础的程序员可以快速上手 Kotlin,[中文](https://github.com/MindorksOpenSource/from-java-to-kotlin/blob/master/README-ZH.md)

流畅快速的 Android 图片加载库。为了实现快速加载和展示图像,Glide 会自动缩减像素采样、缓存、积极重用减少垃圾回收。使用上一行代码就可以实现图片加载和展示,同时网络请求部分可灵活接入任何库```java Glide.with(fragment).load(url).into(imageView);```

Oracle 开源的高性能跨语言虚拟机。用它启动的程序占用内存更低、启动时间更短,而且支持运行多种编程语言,比如 Python、Ruby、C/C++、Java 等。通过 Polyglot API 更是打破了不同语言之间的壁垒,实现多语言混合编程。目前部分功能还处于实验阶段,生产环境慎用。[官网](https://www.graalvm.org/)```java import org.graalvm.polyglot.*;class Polyglot {public static void main(String[] args) {Context context = Context.newBuilder().allowIO(true).build();Value array = context.eval("python", "[1,2,42,4]");int result = array.getArrayElement(2).asInt();System.out.println(result);}}/*** 运行结果* 执行:javac Polyglot.java* 输出:42*/```
适用于 Java 和 Android 的 JWT(JSON Web Token)库```java import io.jsonwebtoken.Jwts;import io.jsonwebtoken.SignatureAlgorithm;import io.jsonwebtoken.security.Keys;import java.security.Key;Key key = Keys.secretKeyFor(SignatureAlgorithm.HS256);String jws = Jwts.builder().setSubject("HelloGitHub").signWith(key).compact();// 得到 JWS 字符串```

完全开源的物联网 IoT 平台。它使用行业的标准物联网协议 MQTT、CoAP 和 HTTP 连接设备,支持数据收集、处理、可视化和设备管理等功能。通过该项目可快速实现物联网平台搭建,从而成为众多大型企业的首选,行业覆盖电信、智慧城市、环境监测等
提供了用于创建高性能应用的数据结构和实用方法的库。它将 Java 标准库中的数据结构进行包装,避免了 Java 自动装箱。比如提供的队列使用了填充字节的方式,避免头尾结点进入同一缓冲行,来提高队列出队入队的性能。整个项目代码量不多注释完善、代码风格清晰,抛开使用来讲也是一个值得学习的项目

Apache Maven 团队开源的更快的构建工具。因为内嵌了 Maven 所以可以丝滑地从 Maven 切换为 mvnd,而且它相较于 Maven 启动速度更快、使用的内存更少、编译花费的时间更少

Java 静态代码安全审计工具。它能够在编码过程中发现潜在的安全风险,并提供一键修复的功能,可在 IDEA 的插件市场安装

Java 的缩略图生成库

支持多种异构数据源离线同步工具。服务于大数据的 ETL 工具,可快速实现 MySQL、HDFS、Hive、HBase 等数据源之间的数据同步,主要用于离线采集各类数据到数据仓库或者大数据平台
混淆压缩 APK 的工具。原理是采用资源混淆的方式,不涉及编译过程仅通过变短资源路径实现压缩和混淆,使用方法简单只需传入一个打包好的 APK 文件

基于 Java 开发的元数据治理平台,可接入 Hive、Kafka、ES、MySQL 等数据源。随着公司业务的发展,数据的复杂度会呈指数倍增长,通过文档和口口相传的方式管理数据关系的方式终将被淘汰。如果你体验过到处问数据库的字段含义、没捋清某个字段导致线上事故、分析数据毫无头绪等情况。这个时候就需要元数据治理平台,它提供浏览、搜索和管理每个字段的含义、关系、来源等信息,通过元数据的方式更好的治理和挖掘数据的价值。[在线体验](https://demo.datahubproject.io/)

高性能的开源时序数据库。该项目主要采用 Java 代码实现,它通过面向列的存储引擎、并行执行、SIMD 指令等技术实现了出色的写入和查询性能,多用于物联网、机器学习、金融等场景。还提供了 SQL 查询方式以及交互式的 Web 操作平台,一款值得期待的开源数据库

运行在 Android 上的开源终端模拟器。提供了 Linux 环境和 Shell 通过自带的包管理器,能够在手机上安装和运行 ssh、Python、gcc、htop、git、vim 等工具

高性能的 Android ORM 库。拥有体积小、易于使用、支持数据库加密等特点,通过它 Android 开发者可以采用面向对象的方式操作数据库,不需要再手写和拼接 SQL 啦
获取键盘和鼠标事件的 Java 库。轻松监听按键、鼠标移动、点击等事件```java import GlobalScreen;import NativeHookException;import NativeMouseWheelEvent;import NativeMouseWheelListener;// 鼠标移动public class GlobalMouseWheelListenerExample implements NativeMouseWheelListener {public void nativeMouseWheelMoved(NativeMouseWheelEvent e) {System.out.println("Mosue Wheel Moved: " + e.getWheelRotation());}public static void main(String[] args) {try {GlobalScreen.registerNativeHook();}catch (NativeHookException ex) {System.err.println("There was a problem registering the native hook.");System.err.println(ex.getMessage());ex.printStackTrace();System.exit(1);}GlobalScreen.addNativeMouseWheelListener(new GlobalMouseWheelListenerExample());}}```

用流程图的方式编写爬虫的平台。无需写代码就可以快速完成一个简单的爬虫

开源的像素风 RougeLike 角色扮演游戏,耐玩且支持中文。游戏虽然画面怀旧但内容丰富,可选战士、法师、射手、盗贼四种角色,超过 150 种道具玩法多样。每场探险都不一样,每次开局都是随机生成关卡和敌人。游戏看似简单但上手有难度,想要通关需要花些时间研究。支持 PC、安卓和 iOS 客户端,[下载地址](https://github.com/00-Evan/shattered-pixel-dungeon/releases/tag/v1.0.3)

一款电脑端小说阅读软件。该软件不仅支持本地导入小说,自动解析生成目录方便阅读。还支持全网搜索和下载小说、在线收听有声小说、自动更新章节等功能
Java 支付工具库,轻松完成支付模块开发。封装了常用的微信、QQ、支付宝、银联、PayPal 支付等支付方式的各种常用接口。不依赖任何 MVC 框架,轻松接入到 Java 项目

国产的 OA 系统。功能齐全支持考勤、会议管理、云盘等,适用于企业 OA、协同办公

Android 系统的沙盒程序,App 虚拟化引擎。它创建了一个虚拟空间,在那里可以任意安装、启动、控制、卸载应用。虚拟空间与外部隔离相当于沙盒环境,可在安卓上实现应用多开、静默安装等黑科技

方便好用的 Android 换肤框架```java@Override public void onCreate() {super.onCreate();SkinCompatManager.withoutActivity(this) // 基础控件换肤初始化.addInflater(new SkinMaterialViewInflater()) // material design 控件换肤初始化[可选].addInflater(new SkinConstraintViewInflater()) // ConstraintLayout 控件换肤初始化[可选].addInflater(new SkinCardViewInflater()) // CardView v7 控件换肤初始化[可选].setSkinStatusBarColorEnable(false) // 关闭状态栏换肤,默认打开[可选].setSkinWindowBackgroundEnable(false) // 关闭windowBackground换肤,默认打开[可选].loadSkin();}```
线程安全的高级 Java Redis 客户端。基于 Netty 实现了非阻塞 I/O,支持同步、异步、集群、哨兵、管道等功能```java RedisClient redisClient = RedisClient.create("redis://localhost/0");StatefulRedisConnection connection = redisClient.connect();System.out.println("Connected to Redis");connection.sync().set("key", "Hello World");connection.close();redisClient.shutdown();```

开源的数据可视化和分析工具。采用 SpringBoot+Vue.js 技术栈实现,通过丰富的可视化图表让数据更加直观- 数据连接:支持关系型数据库、Excel 等文件、Hadoop 等大数据平台、NoSQL 等各种数据源- 图表展示:支持 PC 端、移动端及大屏- 制作图表:支持丰富的图表类型、支持拖拉拽方式快速制作仪表板- 数据引擎:支持直连模式、本地模式
Google 开源的 Java 三方类库。该库提供包括集合、I/O、缓存、并发等开箱即用的工具方法,任何的 Java 应用都可以通过依赖的方式引入该项目。作为 Google 的开源项目,本身的源码也是非常值得开发者学习
MyBatis 通用分页插件,[使用方法](https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md)

一个开源的 EL(T) 平台。能简单快速地把用户提供的应用、数据库等地方的数据聚合到平台,从而可以在一个平台查询、展示、更新、管理这些数据

谷歌官方开源的 Android 媒体播放器。易于定制和扩展,支持丰富的数据格式比如:FMP4、FLV、SmoothStreaming、MP3 等
GPS 追踪平台。此项目支持 170 多种 GPS 协议,1500 多种型号的 GPS 设备,功能包含:实时 GPS 追踪、数据统计报告、报警和通知等等

拥有漂亮仪表盘的服务器监控工具
反编译 Android 安装包 APK 文件的工具

一个用 Java 写的 Git 仓库管理平台。包含 Git 版本管理、持续集成、Issue 管理、代码搜索和审查等功能

一个基于 Flink 实现的商品实时推荐系统。可以通过这个项目了解和学习推荐系统的设计和流程,该系统是通过 Flink 处理日志和统计商品热度,将处理好的数据放入 Redis 缓存。然后再将画像标签和实时记录放入 HBase。在用户请求获取推荐时,根据用户画像生成商品热度榜,并结合协同过滤和标签两个推荐模块,返回最终生成的商品推荐列表

Java 代码测试覆盖率库

一个开源的代码搜索服务。为包括 GitLab、Gitea 的代码托管系统提供源码、仓库、Issue 的搜索服务

一款用于清理数据的桌面工具。通过可视化的方式分析、整理数据,支持 Windows、Linux、Mac 操作系统。拥有查询、过滤、去重、分析等功能,可以把杂乱的数据变成“整洁”的电子表格,还能够将结果导出成多种格式的文件。不会编程和 SQL 的小伙伴们,也可以轻松分析海量数据啦!

让运行在安卓系统上的 QQ 变得更好用的开源 Xposed 模块。Xposed 是一个运行于 Android 操作系统的 Hook 框架,可以理解为安卓操作系统的外挂!安装本工具后,可在 QQ 自带的设置中点击 QNotified 即可开启“超级”模式。支持:- 防撤回- 被删除好友通知- 屏蔽 @全体成员 或者 群红包 的通知- 批量撤回消息- 等等

支持主流数据库的桌面管理工具。一款用 Java 写的数据库管理工具,只要是 JDBC 支持的数据库它都支持。虽然分免费社区版和付费企业版,但是免费的功能其实已经够用啦

一个 Java 微服务网关。支持热服务编排、自动授权选择、在线测试、监控、管理后台等功能,帮助企业治理 API 服务降低重复代码投入,提高服务稳定性
抓取和解析 HTML 的 Java 库。可能很多人都知道这个库,我就不多说什么了。想知道上手有多快?看完示例代码你就算会用了```java Document doc = Jsoup.connect("https://en.wikipedia.org/").get();log(doc.title());Elements newsHeadlines = doc.select("#mp-itn b a");for (Element headline : newsHeadlines) {log("%s\n\t%s",headline.attr("title"), headline.absUrl("href"));}```

Java 字节码编辑器。让你像写普通代码的一样编写 Java 字节码,如果不懂这方面的知识,先不要轻举妄动,可以去看看字节码的资料再回来把玩这个项目
一个轻量级 Java 权限认证框架。它上手简单易于扩展,可以快速解决:登录认证、权限认证、Session 会话等一系列权限相关问题。示例代码:```java// 在登录时写入当前会话的账号 ID StpUtil.setLoginId(10001);// 然后在任意需要校验登录处调用以下 API:如果当前会话未登录// 这句代码会抛出 `NotLoginException` 异常StpUtil.checkLogin();// 还有以下功能StpUtil.logoutByLoginId(10001); // 让账号为 10001 的会话注销登录(踢人下线)StpUtil.hasRole("super-admin"); // 查询当前账号是否含有指定角色标识, 返回 true 或 false StpUtil.setLoginId(10001, "PC"); // 指定设备标识登录StpUtil.logoutByLoginId(10001, "PC"); // 指定设备标识进行强制注销 (不同端不受影响)StpUtil.switchTo(10044); // 将当前会话身份临时切换为其它账号```

高效学习神器 Anki 安卓客户端。Anki 是一个帮助学习的记忆卡片软件,卡片正面是问题背面是答案,然后根据记忆公式帮你复习和记牢。[下载地址](https://github.com/ankidroid/Anki-Android/releases/tag/v2.14.3) 如果下载后不会用的话,本文点赞过 100 我出一份小白教程给大家上手这个神器

携程开源的分布式配置中心。开箱即用理念发挥到极致,比如:服务器部分基于 Spring Boot 和 Spring Cloud 开发,运行方便无需额外的 Tomcat 应用容器。并且具备配置修改后即时生效、规范的权限、流程治理等特性,适用于微服务配置管理场景
设计模式 Java 的最佳实践,出自开源社区大佬们之手。作为有梦想和追求的 Java 程序员,当然需要会一些设计模式啦。这个项目虽然是英文的但是先看代码和图,尝试理解含义那么英文描述也就能猜得八九不离十了。不要让英语作为你不努力的借口,努力变强吧

帮你搞定第三方登陆的 Java 开源组件。使用简单、接入方便,帮你随心所欲地接入第三方登陆,让登陆变得简单。目前已经支持十多个平台,还在持续扩充中

功能强大的 Kafka 集群监控和运维管理平台。强大到我一度以为它是付费的,如果你的公司用 Kafka 的话,可以试试主导把这个项目在公司内部用起来,那你离升职和加薪就不远了

一个开源的 Android 密码管理器。[下载地址](https://github.com/PhilippC/keepass2android/releases),功能:- 仅需输入一次安全性很强的密码(很长或随机的密码)- 支持几乎可与所有的 Android 的浏览器- 支持 .kdbx 文件的读写- 能够编辑条目包括附加字符串字段、文件附件、标签等- 等等

一款 Java 写的高颜值 ZooKeeper 客户端桌面应用。该项目使用了 JDK11 以及 JavaFX 编写的 GUI 客户端,代码量适中适合想学习 JavaFX 编写应用的朋友。需要连接 ZK 服务端查看数据的话,手边有这么个工具还是挺方便的。实用和颜值集一身的项目

一款轻量级 Java 博客项目。基于 SpringBoot+Vue 实现并附有详细开发文档和讲解视频,让刚学会 Java 的同学也能搞定。每个体面的技术人员可能都有一个自己说了算的博客吧

一款 Java 编写的免费沙盒塔防游戏。支持多平台:Windows、Linux、macOS、Android

一个基于 SpringBoot 实现的小说和漫画在线阅读网站。网站功能齐全、资源丰富,同时支持 Web、安卓、微信小程序多平台。服务端分为网站和管理后台,采用 SpringBoot、MyBatis、MySQL、Redis 等技术实现,可当作 Java 新手实战项目学习

Apache 开源的压力测试工具。提供 GUI 操作界面就是可以点点点操作,也可以写脚本提高测试的自动化,它还不局限于 Web 测试,支持更多压力测试场景。我身边 97% 从事测试相关工作的人都用过它,要不要来看看它的源码?纯 Java 实现

一款好用的 Java 操作数据库框架。MyBatis 增强工具包,提供了一些高效、实用、快捷的功能,使用它可以有效地节省您的开发时间。比如切换数据源,只需修改配置文件```java List userList = userMapper.selectList(new QueryWrapper().lambda().ge(User::getAge, 18));```
一个适用于 Spring Boot 项目的轻量级 HTTP Web 框架。使用简单方便,支持接口化的方式发送 HTTP 请求。底层使用 Retrofit 实现,并支持了诸多功能特性增强,极大简化开发```java/*** 定义接口**/@RetrofitClient(baseUrl = "${test.baseUrl}")public interface HttpApi {@GET("person")Result getPerson(@Query("id") Long id);}/*** 注入使用**/@Service public class TestService {@Autowired private HttpApi httpApi;public void test() {// 通过httpApi发起http请求}}```
开源的 Java 互联网业务支付系统。拥有独立的账户体系、用户体系、支付接入体系、支付交易体系、对账清结算体系等,想学习支付相关技术的同学可以看看这个项目。项目结构如下:```roncoo-pay|├── roncoo-pay-app-notify //商户通知模块|├── roncoo-pay-app-order-polling //订单轮询模块|├── roncoo-pay-app-reconciliation //交易对账模块|├── roncoo-pay-app-settlement //交易结算模块|├── roncoo-pay-common-core //公共基础模块,不需要单独部署|├── roncoo-pay-service //核心业务模块,不需要单独部署|├── roncoo-pay-web-boss //运营后台模块|├── roncoo-pay-web-gateway //支付网关模块|├── roncoo-pay-web-merchant //商户后台模块|├── roncoo-pay-web-sample-shop //模拟商城模块```

简单好用的数据库表结构文档生成工具

一个优雅强大的 Android 日历控件,支持周视图、自定义周起始等功能

IDEA Java 代码自动生成插件。支持自动生成单表增删改查、分页、注释等
手把手教你 Java8 的语言特性。项目中还更新了 Java11 的新特性
该项目是 Spring 框架下的小型、单一功能的教程和示例代码集合。主要是 Spring、Spring Boot、Spring Security 等方面

Java 标准库实现的 Flappy Bird。优化了游戏难度并加入移动型水管,增加可玩性。没有采用第三方库和游戏引擎、项目结构简单、代码注释完整,适合 Java 初学者做为编程入门实战项目

清华大学软件学院自主研发并开源的时间序列数据管理引擎。能够有效应对工业物联网领域时间序列数量多、写入频率高、数据乱序到达、秒级聚合等场景。官方网站有系统设计文档和使用手册,作为初学者,可以系统的学习数据库系统的完整设计和实现。在 IoTDB 社区可以与国内用户直接交流、收集需求、设计功能、性能优化,每个改进点都可以看到直接效果。还可以体验 Apache 开源软件的工作模式,与世界各地的开发者交流想法,也有机会成为 Apache Committer、PMC 等

一站式的开源企业级持续测试平台。适应场景包括:测试跟踪、接口测试、性能测试等,兼容 JMeter 等开源标准,能够帮助开发和测试团队充分利用云弹性进行高度可扩展的自动化测试。测试同学的福音

用于辅助快速搭建一个具备基本还原设计效果的 Android 项目。快速搭建一个 Demo App 的必备利器,[官网](https://qmuiteam.com/android)还提供示例 App 下载,感兴趣的小伙伴快去试试吧
一个无需额外注解、开箱即用的 SpringBoot 接口文档生成工具。特性:- 代码即文档- 支持导出 HTML- 同步导出客户端 Model 代码- 等等

基于 Akka 架构的新一代分布式任务调度与计算框架。支持 CRON、API、固定频率、固定延迟等调度策略,支持单机、广播、MapReduce 等多种执行模式,支持在线任务治理与运维,提供 Shell、Python、Java 等功能丰富的任务处理器,提供工作流来编排任务解决依赖关系,使用简单,功能强大,文档齐全。同类产品对比:

基于 Java 的开源静态网站、博客生成器。常用命令如下:```# 快速开始$ curl -s "https://get.sdkman.io" | bash$ sdk install jbake$ mkdir awesome-jbake && cd awesome-jbake$ jbake -i$ jbake -b -s jbake -h #查看帮助文档jbake -i #安装依赖jbake -s #运行项目```

基于 Spring boot 打造的多类型文件在线预览项目。支持多种文件例如:doc、ppt、xls、mp4、txt 等,功能强大便于快速开发和二次开发

一个基于 Azkaban 开发的工作流任务调度系统。该调度系统具备高性能、高可用(去中心化多调度中心和多执行器)和多租户资源隔离等。特性:- 常规的 Command Shell 和 Linkis(HadoopMR、Hive、Spark、Sqoop、Python)大数据任务- 特色的数据检查和工作流之间的依赖任务- 完善的告警和工作流执行策略- 提供多种类型的参数设置,动态全局变量和简单易用的 UI

免费开源的在线云盘项目。功能特性:- 文件夹密码- 支持在线浏览文本文件、视频、图片、音乐- 文件/目录二维码- 全局搜索- 等等
RedSpider 社区开源的《深入浅出 Java 多线程》教程。[在线阅读](http://concurrent.redspider.group/)

一款容易接入、功能强大的 Android TabLayout 库。只是很长时间没更新和维护了,有兴趣的小伙伴可以 fork 把它重新维护起来

一款支持多种计算存储引擎的企业级计算中间件。打通了 Spark、TiSpark、Hive 等存储引擎,提供统一作业执行服务,支持提交 SQL、PySpark、HQL 等各种脚本的计算请求
一份全面、系统的 Java 学习教程。推荐给刚入门 Java、需要进阶的小伙伴,[在线阅读](https://hollischuang.github.io/toBeTopJavaer/#/menu)

分布式易扩展的可视化 DAG 工作流任务调度系统。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用

Kafka 集群管理维护、生产消费监控平台

一款开源的 Java 桌面版音乐播放器,使用 JavaFX/Java 8 技术开发的项目

此项目包含 FXGL 框架构建的游戏示例。该游戏框架无需安装或设置开箱即用,游戏可以轻松打包到单个可执行文件.jar。示例代码:```java public class BasicGameApp extends GameApplication {@Override protected void initSettings(GameSettings settings) {settings.setWidth(800);settings.setHeight(600);settings.setTitle("Basic Game App");}public static void main(String[] args) {launch(args);}}```
Quarkus 开源的 Java 多种框架 demo 项目集合。这些示例项目可以快速启动、结构清晰,初学者可用作 Java 的实战项目,老手可以当作项目脚手架。启动示例:```bash mvn quarkus:dev mvn clean package -Pnative./target/amqp-quickstart-1.0-SNAPSHOT-runner```

一个基于 Apache Ant 和 Maven 概念的项目自动化建构工具(干了这两个工具的活)。它使用一种基于 Groovy 的特定领域语言来声明项目设置,而不是传统的 XML(更灵活)。当前其支持的语言限于 Java、Groovy 和 Scala,计划未来将支持更多的语言
一组以极简为原则的 Java 服务框架和实用工具的项目。这不是一个介绍 Java 项目的集合,而是把经常会用到的功能,用尽可能少的代码实现并封装成库,供开发人员选择使用。当你要用 Java 快速实现一些功能的时候,从而不需要引入繁重的库就可以快速实现功能。一个功能一个库,灵活使用、极简实用,便于学习和理解```Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.7 Mb```
一款用于解析、生成多种格式的 1D/2D 条形码(UPC-A、QR Code、UPC-E、Data Matrix 等)的开源 Java 库。提供了多种的客户端支持包括:J2ME、J2SE 和 Android 等

基于令牌桶算法实现的分布式无锁限流框架。简单易用的 API,开箱即用、支持熔断降级、动态配置规则、可视化监控等功能。示例代码:```java public class AppTest {Logger logger = LoggerFactory.getLogger(getClass());/*** 本地限流*/@Test public void test1() {// 1.配置规则RateLimiterRule rateLimiterRule = new RateLimiterRuleBuilder().setLimit(1).setPeriod(1).setUnit(TimeUnit.SECONDS) //每秒令牌数为1.build();// 2.工厂模式生产限流器RateLimiter limiter = RateLimiterFactory.of(rateLimiterRule);// 3.使用while (true) {if (limiter.tryAcquire()) {logger.info("ok");}}}}```

一款功能齐全的 iOS 、Android、微信小程序客户端研发助手。它功能强大、接入方便、便于扩展,能够让每一个 App 快速接入一些常用的辅助开发工具、测试效率工具、视觉辅助工具,而且能够完美在 Doraemon 面板中接入一些定制的辅助工具

一基于 Spring Boot 2.X 及相关技术栈开发电商系统。包括商城系统及商城后台管理系统,支持商城常见的功能。该项目代码开源、功能完备、流程完整,对于新手开发者十分友好,仅需极短的时间就可以启动这个完整的商城项目。这是一个完整的电商项目,也推荐各个阶段的 Java 开发者学习或为项目贡献代码
基于 SpringCloud2.1 的微服务开发脚手架

一个简单易用、接入方便、UI 多样的 Android 内实现在线更新的库。示例代码:```java//更新库配置UpdateConfig updateConfig = new UpdateConfig().setDebug(true)//是否是Debug模式.setBaseUrl("http://www.cretinzp.com/system/versioninfo")//当 dataSourceType 为 DATA_SOURCE_TYPE_URL 时,配置此接口用于获取更新信息.setMethodType(TypeConfig.METHOD_GET)//当 dataSourceType 为 DATA_SOURCE_TYPE_URL 时,设置请求的方法.setDataSourceType(TypeConfig.DATA_SOURCE_TYPE_URL)//设置获取更新信息的方式.setShowNotification(true)//配置更新的过程中是否在通知栏显示进度.setNotificationIconRes(R.mipmap.download_icon)//配置通知栏显示的图标.setUiThemeType(TypeConfig.UI_THEME_AUTO)//配置 UI 的样式,一种有 12 种样式可供选择.setRequestHeaders(null)//当 dataSourceType 为 DATA_SOURCE_TYPE_URL 时,设置请求的请求头.setRequestParams(null)//当 dataSourceType 为 DATA_SOURCE_TYPE_URL 时,设置请求的请求参数.setCustomActivityClass(CustomActivity.class)//如果你选择的 UI 样式为 TypeConfig.UI_THEME_CUSTOM,那么你需要自定义一个 Activity 继承自 RootActivity 并参照 demo 实现功能,在此处填写自定义 Activity 的 class.setModelClass(new UpdateModel());AppUpdateUtils.init(this, updateConfig);```

基于 Spring Boot 2.1.0、Vue 的前后端分离的后台管理系统,支持数据字典与数据权限管理、一键生成前后端代码、前端菜单动态路由等。基于 Spring Boot2.1.0 框架,涉及的技术栈:非关系数据库 redis、接口测试工具 swagger、druid 数据源驱动、邮件依赖(javax.mail)、三方支付和云存储 SDK、页面模板引擎 freemarker。技术栈丰富,初学者可以作为实战项目学习和使用
Spring 框架源码讲解。包括:spring-core、spring-aop、spring-context、spring-taskspring-mvc 等部分

一款基于 Scala 语言,完全免费、开源、没有广告、支持多语言的在线国际象棋游戏。[在线试玩](https://lichess.org/)
一个轻量级 Java 邮件框架,支持复杂、自定义的发送电子邮件业务。包括经过身份验证的代理、附件、嵌入式图像、自定义标头和属性、强大的地址验证等,亮点是支持身份代理等功能,防止其他其他邮件服务拦截邮件

一款包括数据框和可视化库,可用于加载、转换、过滤和汇总数据的 Java 实用程序。用 Tablesaw 处理数据会节省您的时间和精力,它还支持描述性统计,并且能够与 Smile 机器学习库完美集成。最近两年数据分析师职业大火,做好数据分析,就离不开数据可视化框架。Java 工程师掌握一种数据可视化库势在必行,示例代码:```java public class BoxExample {public static void main(String[] args) throws Exception {Table table = Table.read().csv("../data/tornadoes_1950-2014.csv");Layout layout = Layout.builder().title("Tornado Injuries by Scale").build();BoxTrace trace =BoxTrace.builder(table.categoricalColumn("scale"), table.nCol("injuries")).build();Plot.show(new Figure(layout, trace));}}```

一套基于 Android 的全量版本更新整体解决方案。它除了提供 Android SDK 外,还附带了 Spring Boot 搭建的后台服务以及 Vue.js 编写的后台管理界面。主要解决中小企业 Android 版本管理混乱的问题,提供可定制化的解决方案。该框架提供了完全可插拔的版本更新,同时为了让使用者使用方便,还提供了后台服务和管理界面,使用的都是现下最流行的技术。完全做到灵活、方便,并提供了大量丰富的文档供大家参阅```java XUpdate.newBuild(getActivity()).updateUrl(mUpdateUrl).isAutoMode(true) // 如果需要完全无人干预、自动更新,需要 root 权限【静默安装需要】.update();```

一个侧滑处理框架,而不是具体某种侧滑效果的实现。其内部封装十几种侧滑效果,包括侧滑返回、侧滑删除、百叶窗、开门等效果,总有那么几款能让你眼前一亮。示例代码:```java//为控件添加仿MIUI的弹性拉伸效果:// 当纵向不能滚动(或滚动到顶/底)时,若继续拖动,则 UI 呈现弹性拉伸效果,释放后平滑恢复SmartSwipe.wrap(view).addConsumer(new StretchConsumer()).enableVertical();SmartSwipe.wrap(view).addConsumer(new StretchConsumer()).enableVertical() //仿 MIUI 拉伸效果的方向为:上下 2 个方向.addConsumer(new SpaceConsumer()).enableHorizontal() //仿 iOS 弹性留白效果的方向为:左右 2 个方向;SmartSwipeBack.activityBezierBack(application, null); //仿小米 MIUI 系统的贝塞尔曲线返回效果SmartSwipeBack.activityStayBack(application, null); //仿手机 QQ 的手势滑动返回SmartSwipeBack.activitySlidingBack(application, null); //仿微信带联动效果的透明侧滑返回SmartSwipeBack.activityDoorBack(application, null); //侧滑开门样式关闭 activity SmartSwipeBack.activityShuttersBack(application, null); //侧滑百叶窗样式关闭 activity//xxxMode 第二个参数为 false,表示工作方向为纵向:下拉刷新&上拉加载更多//如果第二个参数设置为 true,则表示工作方向为横向:右拉刷新&左拉加载更多SmartSwipeRefresh.drawerMode(view, false).setDataLoader(loader);SmartSwipeRefresh.behindMode(view, false).setDataLoader(loader);SmartSwipeRefresh.scaleMode(view, false).setDataLoader(loader);SmartSwipeRefresh.translateMode(view, false).setDataLoader(loader);```

一个不需要连接电脑、非侵入式的 Android 自动化工具。公测版拥有录制回放、性能测试、一机多控三项主要功能,能为测试开发人员节省宝贵时间。安卓版本多、终端型号多,一个成熟安卓应用的上线需要进行大量测试,而很多测试都是属于重复操作,通过此工具可以极大简化测试人员的工作量

一个前后端分离的人力资源管理系统。该项目采用 SpringBoot + Vue 架构,这两个都是近些年很流行的框架。该项目涉及的场景很多,可作为全栈工程师的入门实践

一个简洁而优雅的 Android 原生 UI 框架。让原生 Android 开发人员也能像 web 开发者一样,拥有方便的 UI 库。该项目适用于有一定 Android 开发经验的开发者

阿里开源的 Java 诊断工具。当线上出现了奇怪的异常时,无需发版就能截获运行时的数据,包括参数、返回值、异常、耗时等等。上手简单、文档完备、无代码侵入式的可以对正在运行的 jvm 进程进行监控,简单易用的命令行工具。线上出 bug 了,有了 arthas 先喝口咖啡压压惊,问题分分钟定位不是梦

一套基于 SpringBoot+MyBatis 的电商系统,包括前台商城系统及后台管理系统。功能完备是学习和实践电商的好项目。项目结构:```mall├── mall-common -- 工具类及通用代码├── mall-mbg -- MyBatisGenerator 生成的数据库操作代码├── mall-admin -- 后台商城管理系统接口├── mall-search -- 基于 Elasticsearch 的商品搜索系统├── mall-portal -- 前台商城系统接口└── mall-demo -- 框架搭建时的测试代码```
一个 Java 实现的人机问答系统,能够自动分析问题并给出候选答案。在 2011 年的美国热门电视智力问答节目《Jeopardy》中,由 IBM 开发的 AI 问答系统 Watson 战胜了人类选手,而 QuestionAnsweringSystem 则是 Watson 的 Java 实现。从今天的眼光去看,它可能已经不够那么智能,不过由于它的简便性和易于部署运行,因此非常适合新手把玩,赶紧去你的应用中集成一个炫酷的智能问答系统吧

一个简单、易用的 API 管理平台。目的是为了降低后端服务开发与前端调用的耦合性,通过该框架使整个项目的开发、协作更加完善。客户端开发人员从管理平台查找需要的接口信息进行调用,服务端开发人员定义好接口后同步到管理平台中,管理平台可以统一对接口的访问设置等。一个让前端和后端能够成为“好朋友”的框架✌️

一份算法清单,详细演示了 Java 中内置的算法实现。如果你想要知道平时使用 Java 时,Java 的内置算法如何帮你处理任务,那么这个项目值得一读。此外,这份清单中还用到了配图来帮助你理解

一款基于 MVP 架构开发的二级联动列表控件,高度解耦、轻松配置、使用方便。依托于 MVP 的 “配置解耦” 特性,使用者无需知道内部的实现细节,仅通过实现配置类即可完成功能的定制和扩展。此外,在不设置自定义配置的情况下,最少只需一行代码即可运行起来

一个高效、强大的 Android 刷新库。支持越界回弹、二级刷新、横向刷新、拉伸回弹、类QQ下拉回弹效果等

Android 蓝牙框架,包括扫描、连接、设置通知、发送数据、读取、接收数据和 OTA 升级等。近乎一行代码植入项目,可扩展、配置蓝牙相关操作,适用于 Android-BLE4.0 蓝牙。即便是 BLE 方面的小白也可以在短短几分钟内接入并运用到项目中
用于在几秒钟内创建 Spring Boot + Angular/React 项目的开源应用程序生成器(脚手架)。它可以自动化生成一个完整 Web 应用或微服务架构,加快项目的开发效率。特点和技术栈:- 基于 Spring Boot 框架的服务端,具备高性能和高可用的 Java 技术栈- 基于 Angular、React、Bootstrap 的时尚、现代、移动优先的前端- 基于 JHipster Registry、Netflix OSS、ELK 堆栈和 Docker 的强大的微服务架构- 使用 Yeoman、Webpack 和 Maven/Gradle 构建应用程序的强大工作流程

深度解耦的 Android 加载组件,特点:- 深度解耦 App 中全局加载中、加载失败及空数据视图- 分离全局加载状态视图的实现和使用- 不需要在每个页面的布局文件中额外添加加载状态视图- 可用于 Activity,也可用于为某个 View 显示加载状态等```java Gloading.initDefault(new GlobalAdapter());Gloading.Holder holder = Gloading.getDefault().wrap(activity).withRetry(retryTask);Gloading.Holder holder = Gloading.getDefault().wrap(view).withRetry(retryTask);//显示加载中的UI状态holder.showLoading()//显示加载成功的UI状态holder.showLoadSuccess()//显示加载失败的UI状态holder.showFailed()//显示加载成功,但数据未空的UI状态holder.showEmpty()```
陌陌开源的 Java 安全编码规范和 SDK

一款面向开发者的 IM 即时通讯系统。命令行通讯工具,对开发者友好。提供了一些组件让开发者易于扩展和定制功能。架构图如下:

Android 端开源的 GIF 浏览和分享 App。该应用界面基于 Material Design 标准设计,围绕 GIF 为主题,建立了一个小型的社交系统。支持:- 查看热门搞笑的 GIF 图- 关注你喜欢的人,他的有趣分享尽收眼底- 一键发布你自己的 GIF 趣图- 对你感兴趣的内容点赞、点评- 喜欢的内容轻松转发至主流社交软件,传递你的快乐

一套一站式分布式事务解决方案。让分布式事务的使用像本地事务的使用一样,简单和高效,并逐步解决开发者们遇到的分布式事务方面的所有难题。分布式事务提出了很多年,但是一直没有很好的解决方案,要不就收费很贵。蚂蚁金服开源的 seata,将让分布式事务不在束之高阁,任何需要的人都可以使用它,推荐学习和使用。工作流程图如下:
Spring 系列源码教程,包含 Spring Boot、Spring Boot、Spring Cloud 等。Spring 是 Java 目前生命力最强的框架之一,通过资料与源码的配合,容易学习和上手

图片压缩是常见的问题,那么微信是如何处理图像的压缩?Luban(鲁班)就是通过在微信朋友圈发送近 100 张不同分辨率的图片,对比原图与微信压缩后的图片逆向推算出来的压缩算法。示例代码:```java// 同步调用Flowable.just(photos).observeOn(Schedulers.io()).map(new Function, List>() {@Override public List apply(@NonNull List list) throws Exception {// 同步方法直接返回压缩后的文件return Luban.with(MainActivity.this).load(list).get();}}).observeOn(AndroidSchedulers.mainThread()).subscribe();```
一款采用了新的搜索方法的搜索引擎软件。 它不需要中央服务器,但它搜索的结果来自于独立的分布式网络。在这样的分布式网络中,没有任何一个实体可以决定列出的内容或结果出现的顺序。启动和关闭的方法:- GNU/Linux 系统,启动:`./startYACY.sh`、关闭:`./stopYACY.sh`- Windows 系统,启动:双击`startYACY.bat`、 关闭:双击`stopYACY.bat`- Mac OS X 系统,请使用 Mac 应用程序,并像其他 Mac 应用程序那样启动或停止它(双击)

快速开发 API 服务的框架。为简单的增删改查、复杂的查询、简单的事务操作提供了完全自动化的 API。大部分 HTTP 请求后端再也不用写接口了,也不用写文档了,适合中小型前后端分离的项目

Java 博客系统。在层出不穷的博客系统中,很难看到使用 Java 编写的简洁优雅的博客系统。该项目还具备着轻快且功能强大的特点,这些特性使它从众多 Java 博客系统脱颖而出。安装命令:```# 安装 Halo$ yum install -y wget && wget -O halo-cli.sh https://git.io/fxHqp && bash halo-cli.sh -i# 更新 Halo$ bash halo-cli.sh -u```

基于 SparkSQL 实现了一套即席查询服务,具有如下特性:- 优雅的交互方式,支持多种 datasource/sink、多数据源混算- Spark 常驻服务,基于 zookeeper 的引擎自动发现- 多 session 模式实现并行查询- 等等
Spring Boot 教程
Android 工具库,注释规范、API文档清晰明了、工具类种类多。根据不同功能模块封装,方便使用。帮助开发人员,便捷、快速地开发安全、可靠的项目。内置部分常用的资源文件,如 color.xml、layout.xml 等

一款响应式架构。借助总线转发数据的请求和响应,实现 UI、业务的完全解耦

一个轻量级的开源 Android 图片水印框架,支持文字水印和图像水印,以及不同的水印样式、位置等。同时可以支持 LSB 空间域隐形数字水印的加载和频域数字水印的加载和检测,适合客户端图片水印添加,移动端图像处理等

简单、美观、强大、可扩展的 Android 和 Java 日志库,可同时在多个通道打印日志,如 Logcat、Console 和文件。功能:- 全局配置(TAG,各种格式化器...)或基于单条日志的配置- 支持打印任意对象以及可自定义的对象格式化器- 支持打印无限长的日志(没有 4K 字符的限制)- XML 和 JSON 格式化输出- 等等

命令行可联网的斗地主游戏。Ratel 分客户端和服务端,你可以让小伙伴们的客户端都连接你的服务器进行游戏,也可以直接连接作者的公网服务器进行游戏

手机端显示 Android 崩溃日志,示例代码如下:```java SpiderMan.init(this)//设置回调异常信息,友盟等第三方崩溃信息收集平台会用到,.setOnCrashListener(new SpiderMan.OnCrashListener() {/**** @param t* @param ex* @param model 崩溃信息记录,包含设备信息*/@Override public void onCrash(Thread t, Throwable ex, CrashModel model) {}});```

学习成本极低的 Android 屏幕适配方案,已被知名 APP 用于线上产品

一个针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具。特性:- 高性能: 单线程支持每秒 1000 万次 响应时间的记录,每次记录只花费 73 纳秒- 无侵入:采用 JavaAgent 方式,对应用程序完全无侵入,无需修改应用代码- 低内存:采用内存复用的方式,整个生命周期只产生极少的临时对象,不影响应用程序的 GC- 高精度:采用纳秒来计算响应时间- 高实时:支持秒级监控,最低 1 秒

用于绘制数据的轻量级 Java 库。示例代码:```java double[] xData = new double[] { 0.0, 1.0, 2.0 };double[] yData = new double[] { 2.0, 1.0, 0.0 };// Create Chart XYChart chart = QuickChart.getChart("Sample Chart", "X", "Y", "y(x)", xData, yData);// Show it new SwingWrapper(chart).displayChart();// Save it BitmapEncoder.saveBitmap(chart, "./Sample_Chart", BitmapFormat.PNG);// or save it in high-res BitmapEncoder.saveBitmapWithDPI(chart, "./Sample_Chart_300_DPI", BitmapFormat.PNG, 300);```
基于 Netty4 实现的快速、轻量级 Web 框架。没有过多的依赖,核心 jar 包仅 30KB。一行代码即可启动 HTTP 服务,支持灵活的传参方式。[中文文档](https://github.com/TogetherOS/cicada/blob/master/README-ZH.md),示例代码:```java public class MainStart {public static void main(String[] args) throws InterruptedException {CicadaServer.start(MainStart.class,"/cicada-example") ;}}```

自定义 ViewPager 组件,支持双向自动循环、自动循环参数自由设置、界面实时刷新、自定义边缘及垂直切换效果。示例代码:```java public class ActivityEdgeEffectColor extends BaseActivity {private CoolViewPager vp;private void initViewPager(){vp = findViewById(R.id.vp);vp.setScrollMode(CoolViewPager.ScrollMode.VERTICAL);vp.setAutoScroll(true,1000);vp.setAutoScrollDirection(CoolViewPager.AutoScrollDirection.BACKWARD);vp.setInfiniteLoop(true);vp.setScrollDuration(true,600);vp.setDrawEdgeEffect(true);vp.setEdgeEffectColor(getResources().getColor(R.color.colorPrimary));}}```

Android 文件下载引擎,稳定、高效、灵活、简单易用。特点:- 单任务多线程/多连接/分块下载- 高并发- 独立/非独立进程- 自动断点续传
走心的 Java Web 入门开发教程,对于初学者友好。教程中列举了在初学 Java Web 的过程中,可能会遇到的问题、难点

不需要 ROOT 权限的类似按键精灵的自动操作软件,可以实现自动点击、滑动、输入文字、打开应用等。Auto.js 的大部分用户用它来点赞、签到、刷游戏

一个 Android 的 Activity 切换动画库。该库可以用少量代码实现一些复杂的、自定义的 Activity 切换动画
唯品会的 Java 技术干货分享

以简洁的 API 让 Retrofit 同时支持多个 BaseUrl,动态改变 BaseUrl
帮助 Android 开发者,让项目在崩溃时从异常堆栈中,自动寻找 Stack Overflow 的回答。体积只有 9kb 并且没有依赖其他第三方库。当程序出现异常时会有如下输出:```┌—————————————————————AutoEx——————————————————————├ 错误类型:android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0056 type #0x12 is not valid。↑详细异常请往上滚动查看↑├ 推荐参考Stack Overflow上4条同类问题。↓点击下方连接查看↓├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄├ 标题:Android Resources$NotFoundException: Resource ID #0x7f030027├ 链接:https://stackoverflow.com/questions/21269502/android-resourcesnotfoundexception-resource-id-0x7f030027├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄├ 标题:android.content.res.Resources$NotFoundException: Resource ID #0x7f07007e├ 链接:https://stackoverflow.com/questions/48161713/android-content-res-resourcesnotfoundexception-resource-id-0x7f07007e├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄├ 标题:App crashes when adding an ImageView?├ 链接:https://stackoverflow.com/questions/47600747/app-crashes-when-adding-an-imageview├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄├ 标题:XML Android app will not load on phone├ 链接:https://stackoverflow.com/questions/48310838/xml-android-app-will-not-load-on-phone└—————————————————————AutoEx——————————————————————```
提供了多个方便易用的 Java 元组类。写 Java 代码经常会有需要使用元组的场景,我们经常会用 Array 或者 List 来代替这种实现。但是这不仅不够优雅,并且不够安全(你要放弃泛型来达到可以存放不同类型的数据)。而 javatuples 提供了多个类型安全的、优雅的实现类,大大提升了我们开发的效率以及便捷性。示例代码:```java...String str = ...;Integer integ = ...;Double[] doubleArray = ...;...// create a tuple Triplet triplet = Triplet.with(str, integ, doubleArray);// fetch data...String myStr = triplet.getValue0();Integer myInteg = triplet.getValue1();Double[] myDoubleArray = triplet.getValue2();...```
Android 页面在打开后需要在 UI 初始化完成后才能发起网络请求,以免网络请求返回后展示到 UI 时出现错误。但这种串行的做法导致页面的整个初始化时间变长。使用该工具可以在打开页面之前预加载数据,然后在页面 UI 初始化完成后提取预加载好的数据进行展示,从而缩短页面初始化时间,提升用户体验。示例代码如下:```java// 开启预加载任务int preLoaderId = PreLoader.preLoad(new Loader());Intent intent = new Intent(this, PreLoadBeforeLaunchActivity.class);intent.putExtra("preLoaderId", preLoaderId);startActivity(intent);// 预加载任务:模拟网络接口请求获取数据class Loader implements DataLoader {@Override public String loadData() {//此方法在线程池中运行,无需再开子线程去加载数据try {Thread.sleep(600);} catch (InterruptedException ignored) {}return "data from network server";}}// 在Activity(或Fragment)中UI初始化完成后开始监听预加载数据PreLoader.listenData(preLoaderId, new Listener());// 数据加载完成后,会调用DataListener.onDataArrived(...)来处理加载后的数据class Listener implements DataListener {@Override public void onDataArrived(String data) {//此方法在主线程中运行,无需使用Handler切换线程运行Toast.makeText(activity, data, Toast.LENGTH_SHORT).show();}}```

仿今日头条点赞喷射表情动画

使用简单、功能丰富的 Android 组件化框架。适用于几乎所有的组件化开发需求,可进行组件层面的 AOP 编程。[项目 wiki](https://github.com/luckybilly/CC/wiki)
开源、非官方、功能全面的微信开发 Java SDK,支持包括微信支付、开放平台、小程序、企业号和公众号等功能的开发。[示例 Demo 索引](https://github.com/Wechat-Group/weixin-java-tools/blob/master/demo.md),以及详细的[开发文档](https://github.com/wechat-group/weixin-java-tools/wiki)

纯净的 WebSocket 聊天插件。服务器绝对控制权的推送机制,合理的线程设计,[在线 Demo](https://www.threecss.com/AnyChatClient/third-embed-demo.html)。功能如下:- 对接任何身份系统- 个人聊天、群聊天- 查看聊天记录- 离线消息推送- 支持嵌入式,通过 iframe 即可进行嵌入- 等等
[LeetCode](https://leetcode.com/) 上面主要收集了各大 IT 公司的笔试面试题。该项目为 LeetCode Java 语言的题解集合

Andorid 任意界面悬浮窗组件,功能丰富,使用简单。特性如下:- 支持拖动、自动贴边等动画- 内部自动进行权限申请操作- 应用退到后台时,悬浮窗会自动隐藏- 等等

Android 视频播放器。支持弹幕、滤镜、水印、截图、边播边缓存、重力旋转与手动旋转的同步等多种功能

IntelliJ/Android Studio 生成、设计 icon 的插件,安装简单使用方便。如下图所示:
轻量级、高效、简洁优雅的 Java Web 框架,致力于为个人开发者更快捷地开发 Web 应用提供便利。详尽的[中文文档](https://github.com/lets-blade/blade/blob/master/README_CN.md)及[入门视频](https://www.bilibili.com/video/av15572599/)。示例代码:```java public static void main(String[] args) {Blade.me().get("/", (req, res) -> {res.text("Hello Blade");}).start();}```

MySQL 数据库 binlog 的增量订阅、消费组件。模拟 MySQL salve 方式,实现 MySQL 的主从同步,同时加入了增量日志解析等功能。MySQL 原始主备机制,示意图如下:

极简的、组件式的 RPC 框架,灵活且适合学习。包含系统通用多线程模型与消息通讯、多对多关系的分布式锁、基于系统通用多线程模型的 Websocket 框架、支持行级锁的多线程锁等组件
Android 图片、视频文件选择器,支持多选、单选、拍摄和裁剪等
支持微信和支付宝两种主流支付的集成库,示例代码如下:```java//1.创建微信支付请求WechatPayReq wechatPayReq = new WechatPayReq.Builder().with(this) //activity实例.setAppId(appid) //微信支付AppID.setPartnerId(partnerid)//微信支付商户号.setPrepayId(prepayid)//预支付码// .setPackageValue(wechatPayReq.get)//"Sign=WXPay".setNonceStr(noncestr).setTimeStamp(timestamp)//时间戳.setSign(sign)//签名.create();//2.发送微信支付请求PayAPI.getInstance().sendPayRequest(wechatPayReq);//关于微信支付的回调//wechatPayReq.setOnWechatPayListener(new OnWechatPayListener);```

[代码家](https://github.com/daimajia)开源的滑动布局库,不用多说什么了。动起手来试试,然后通过阅读代码学习大神们的编程技巧,有一天你也可以做出有价值、流行的开源库
一系列模型与算法组成的 NLP 工具包,目标是普及自然语言处理在生产环境中的应用。具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点,功能包括:中文分词、词性标注、命名实体识别、关键词提取等。示例代码:```java String[] testCase = new String[]{"北川景子参演了林诣彬导演的《速度与激情3》","林志玲亮相网友:确定不是波多野结衣?",};Segment segment = HanLP.newSegment().enableJapaneseNameRecognize(true);for (String sentence : testCase){List termList = segment.seg(sentence);System.out.println(termList);}```

一个新的 MVP 架构,此框架旨在解决传统 MVP 类和接口太多、并且 Presenter 和 View 通过接口通信过于繁琐、重用 Presenter 代价太大等问题。架构图如下:
阿里云栖大会发布的 Java 代码规约扫描插件,支持多种 IDE。代码规范对于编程来说是非常重要的,随着代码量的增多会更加意识到其重要性。赶快拿去使用吧,[阿里巴巴 Java 开发手册](https://github.com/alibaba/p3c/blob/master/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4Java%E5%BC%80%E5%8F%91%E6%89%8B%E5%86%8C%EF%BC%88%E7%BB%88%E6%9E%81%E7%89%88%EF%BC%89.pdf)

一个 TV Leanback 风格桌面,基于 Leanback 库开发,符合 Android TV 官方交互规范

spring-data-jpa 和 jQuery [datatables](https://www.datatables.net/) 集成工具。极大简化基于 datatables 数据表格的开发,示例代码:```// 前端代码$(document).ready(function() {var table = $('table#sample').DataTable({'ajax': {'contentType': 'application/json','url': '/data/users','type': 'POST','data': function(d) {return JSON.stringify(d);}},// java 代码 server-side becomes@JsonView(DataTablesOutput.View.class)@RequestMapping(value = "/data/users", method = RequestMethod.POST)public DataTablesOutput getUsers(@Valid @RequestBody DataTablesInput input) {return userRepository.findAll(input);}```
轻量级分布式任务调度框架,其核心设计目标是:开发迅速、学习简单、轻量级、易扩展,文档齐全。[官网](http://www.xuxueli.com/xxl-job/)

用 SQL 查询 Elasticsearch

干货集中营 Android 客户端。每天一张美女图片,一个视频短片,若干Android,iOS等程序干货,周一到周五每天更新,数据全部由 [干货集中营](http://gank.io/) 提供。项目简单完整,涉及内容全面,利于学习 Android 开发的技巧

整合了大量主流开源项目的 Android Mvp 快速搭建框架。包含 Dagger2、Retrofit、Rxjava 等 Rx 系三方库,并且提供 UI 自适应方案,本框架将它们结合起来。文档详尽、成熟稳定的 Android MVP 解决方案
很全面、高质量 Android 面试指南

强大,稳定,成熟的 Android下 拉刷新框架,集成了各种的炫酷、多样、实用、美观的 Header 和 Footer

基于现在流行的 `Spring+SpringMVC+Mybatis` 框架,逐步搭建一个现在互联网流行的项目架构。特点:- 门槛低,**绝对适合新手**- 从最基本的整合三大框架开始- 逐步重构为用 `dubbo` 构建微服务- 其中不乏实际开发中的实战 demo- 持续更新,已经开始切换到 `SpringBoot+SpringCloud` 构建微服务应用

好玩的下拉刷新控件

一行代码即可监听 App 中所有网络链接的上传以及下载进度,包括 Glide 的图片加载进度。实现原理类似 EventBus 你可在 App 中的任何地方,将多个监听器以 URL 地址作为标识符,注册到本框架。当此 URL 地址存在下载或者上传的动作时,框架会主动调用所有使用此 URL 地址注册过的监听器,达到多个模块的同步更新
一个 JDBC 组件库,包括数据库连接池、SQL Parser 等组件,同时能够提供强大的监控和扩展功能
Android 打包工具,支持极速打包,速度奇快
用 Java 实现的现代化社区(论坛/社交网络/博客)平台,功能众多,[访问该社区](https://hacpai.com/tag/Sym)
Android 问题交流讨论坛,包含 Android 开发中的各种问题讨论
Android 开源代码大全,收集 Android 开发中优秀的开源组件库,方便大家查询

Android 粒子动画效果,非常炫酷。让 APP 逼格更上一层楼
Facebook 开源的 Android 管理图片的库,[中文文档](https://www.fresco-cn.org/docs/index.html)。包含功能如下:- 显示占位图直到加载完成- 下载图片- 缓存图片- 图片不再显示时,从内存中移除- 等等
GitClub 不仅仅是一个 GitHub 客户端,还是一个发现优秀 GitHub 开源项目的 App

命令行模式的 JVM 监控

简洁、漂亮、轻量级、Java 博客,[在线预览](https://tale.biezhi.me/)。特性:- 设计简洁,界面美观- Markdown 文章发布- 自定义文章链接- 支持多主题- 支持 Emoji 表情- 支持网易云音乐播放- 支持附件和数据库备份- 部署简单,不依赖 Tomcat
RocketMQ 是阿里巴巴在 2012 年开源的第三代分布式消息中间件。历年双 11,RocketMQ 都承担了阿里巴巴生产系统百分之百的消息流转,在核心交易链路有着稳定和出色的表现,今年双十一,更是创造了万亿级消息精准低延迟投递。
锤子开源的 One Step 项目,一步(one step)是通过拖拽完成将信息发送至应用或联系人的动作,节省了在不同应用之间切换的诸多步骤,第一次打通了手持设备中应用间的边界,[One Step](http://www.smartisan.com/m1/#/os?section=onestep)
Android 开源项目分类汇总
腾讯开源的毫秒服务引擎(Mass Service Engine in Cluster)。它是一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。毫秒服务引擎集 RPC、名字发现服务、负载均衡、业务监控、灰度发布、容量管理、日志管理、key-value 存储于一体,[官网介绍](http://haomiao.qq.com/index.html#documents)
Android 开发人员不得不收集的代码,[中文介绍](https://github.com/Blankj/AndroidUtilCode/blob/master/README-CN.md)
Bilibili 开源的 Android 开源弹幕引擎·烈焰弹幕使。特性:- 使用多种方式(View/SurfaceView/TextureView)实现高效绘制- 该站 XML 弹幕格式解析- 基础弹幕精确还原绘制- 支持 mode7 特殊弹幕- 多核机型优化,高效的预缓存机制- 支持多种显示效果选项实时切换- 实时弹幕显示支持- 换行弹幕支持/运动弹幕支持- 支持自定义字体- 支持多种弹幕参数设置- 支持多种方式的弹幕屏蔽
一个企业级的分布式配置管理平台,专注于各种分布式系统配置管理的通用平台,提供统一的配置管理服务。核心目标:一个 jar 包,到处运行。[在线文档](http://disconf.readthedocs.io/zh_CN/latest/index.html)
开发过程中需要依赖一些接口,这些接口要么是搭建环境困难,要么是还没有实现,要么是交互比较复杂。这种情况下,使用 mock server 来 mock(模拟)这些接口,以便开发和测试能够正常进行。快速上手步骤:```1. 下载 Moco:https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/0.11.0/moco-runner-0.11.0-standalone.jar 2. 写需要返回的reponse数据格式如下:[{"response" :{"text" : "Hello, Moco"}}](文件名:foo.json)3.运行java -jar moco-runner--standalone.jar http -p 12306 -c foo.json 4. 访问 http://localhost:12306,你将会看到 “Hello, Moco”```

搜狐视频开源的 CacheCloud 项目,提供了一个 Redis 云管理平台,功能强大,教程详细(有视频教程),文档齐全,**企业级开源项目**
Greys 是 Java 在线问题诊断工具。