逛了4年Github,一口氣把我收藏的 Java 開源項目分享給你

碼農三哥 發佈 2019-12-22T07:07:24+00:00

AwsomeJavaGreat Java project on Github.English Version大家都知道 Github 是一個程式設計師福地,這裡有各種厲害的開源框架、軟體或者教程。

好像忘記貼項目地址了:github.com/Snailclimb/…

Awsome Java


Great Java project on Github(Github 上非常棒的 Java 開源項目).

English Version

大家都知道 Github 是一個程式設計師福地,這裡有各種厲害的開源框架、軟體或者教程。這些東西對於我們學習和進步有著莫大的進步,所以我有了這個將 Github 上非常棒的 Java 開源項目整理下來的想法。我會按照幾個維度對項目進行分類,以便大家查閱。當然,如果你覺得不錯的話,歡迎給本項目點個 Star。我會用我的業餘時間持續完善這份名單,謝謝。

歡迎大家推薦自己覺得不錯的 Java 項目,下面項目的排序很大程度是根據當前項目的 Star 數量。

教程

Java

  1. JavaGuide :【Java學習+面試指南】 一份涵蓋大部分Java程式設計師所需要掌握的核心知識。
  2. CS-Notes :技術面試必備基礎知識、Leetcode 題解、後端面試、Java 面試、春招、秋招、作業系統、計算機網絡、系統設計。
  3. advanced-java :網際網路 Java 工程師進階知識完全掃盲:涵蓋高並發、分布式、高可用、微服務、海量數據處理等領域知識。
  4. architect-awesome :後端架構師技術圖譜。
  5. toBeTopJavaer :Java工程師成神之路 。
  6. tutorials:該項目是一系列小而專注的教程 - 每個教程都涵蓋 Java 生態系統中單一且定義明確的開發領域。 當然,它們的重點是 Spring Framework - Spring,Spring Boot 和 Spring Securiyt。 除了 Spring 之外,還有以下技術:核心 Java,Jackson,HttpClient,Guava。
  7. JCSprout :處於萌芽階段的Java核心知識庫。
  8. JavaFamily :【網際網路一線大廠面試+學習指南】進階知識完全掃盲。
  9. JGrowing :Java is Growing up but not only Java。Java成長路線,但學到不僅僅是Java。

數據結構/算法

  1. LeetCodeAnimation :Demonstrate all the questions on LeetCode in the form of animation.(用動畫的形式呈現解LeetCode題目的思路)。
  2. TheAlgorithms-Java :All Algorithms implemented in Java。

SpringBoot

  1. SpringAll :循序漸進,學習Spring Boot、Spring Boot & Shiro、Spring Cloud、Spring Security & Spring Security OAuth2,博客Spring系列源碼。
  2. springboot-learning-example :Spring Boot 實踐學習案例,是 Spring Boot 初學者及核心技術鞏固的最佳實踐。

SpringCloud

  1. SpringCloudLearning : 《史上最簡單的Spring Cloud教程源碼》。
  2. SpringCloud :基於SpringCloud2.1的微服務開發腳手架,整合了spring-security-oauth2、nacos、feign、sentinel、springcloud-gateway等。服務治理方面引入elasticsearch、skywalking、springboot-admin、zipkin等,讓項目開發快速進入業務開發,而不需過多時間花費在架構搭建上。

大數據

  1. BigData-Notes :大數據入門指南 ⭐️。
  2. flink-learning :含 Flink 入門、概念、原理、實戰、性能調優、源碼解析等內容。

設計模式

  1. java-design-patterns : Design patterns implemented in Java。

框架

  1. spring-boot :Spring Boot可以輕鬆創建獨立的生產級基於Spring的應用程式,內置 web 伺服器讓你可以像運行普通 Java 程序一樣運行項目。另外,大部分Spring Boot項目只需要少量的配置即可,這有別於 Spring 的重配置。
  2. flink :Apache Flink 是一個框架和分布式處理引擎,用於在無邊界和有邊界數據流上進行有狀態的計算。Flink 能在所有常見集群環境中運行,並能以內存速度和任意規模進行計算。
  3. Sentinel :A lightweight powerful flow control component enabling reliability and monitoring for microservices. (輕量級的流量控制、熔斷降級 Java 庫)。
  4. dubbo :Apache Dubbo是一個基於Java的高性能開源RPC框架。
  5. spring-cloud-kubernetes : Kubernetes 集成 Spring Cloud Discovery Client, Configuration, etc...。
  6. seata : Seata 是一種易於使用,高性能,基於 Java 的開源分布式事務解決方案。
  7. skywalking : 針對分布式系統的應用性能監控,尤其是針對微服務、雲原生和面向容器的分布式系統架構。

軟體/系統

開發

  1. elasticsearch:開源,分布式,RESTful搜尋引擎。
  2. zipkin :Zipkin是一個分布式跟蹤系統。它有助於收集解決服務體系結構中的延遲問題所需的時序數據。功能包括該數據的收集和查找。
  3. apollo :Apollo(阿波羅)是攜程框架部門研發的分布式配置中心,能夠集中化管理應用不同環境、不同集群的配置,配置修改後能夠實時推送到應用端,並且具備規範的權限、流程治理等特性,適用於微服務配置管理場景。
  4. canal :阿里巴巴 MySQL binlog 增量訂閱&消費組件。
  5. DataX :DataX 是阿里巴巴集團內被廣泛使用的離線數據同步工具/平台,實現包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各種異構數據源之間高效的數據同步功能。
  6. cat : CAT 作為服務端項目基礎組件,提供了 Java, C/C++, Node.js, Python, Go 等多語言客戶端,已經在美團點評的基礎架構中間件框架(MVC框架,RPC框架,資料庫框架,緩存框架等,消息隊列,配置系統等)深度集成,為美團點評各業務線提供系統豐富的性能指標、健康狀況、實時告警等。
  7. server : 野火IM是一套跨平台、核心功能開源的即時通訊解決方案。
  8. EasyScheduler : Easy Scheduler是一個分布式工作流任務調度系統,主要解決「複雜任務依賴但無法直接監控任務健康狀態」的問題。Easy Scheduler以DAG方式組裝任務,可以實時監控任務的運行狀態。同時,它支持重試,重新運行等操作... 。

其他

  1. halo :Halo 可能是最好的 Java 博客系統。

實戰

  1. mall :mall 項目是一套電商系統,包括前台商城系統及後台管理系統,基於 SpringBoot+MyBatis 實現。
  2. mall-swarm : mall-swarm是一套微服務商城系統,採用了 Spring Cloud Greenwich、Spring Boot 2、MyBatis、Docker、Elasticsearch等核心技術,同時提供了基於Vue的管理後台方便快速搭建系統。
  3. litemall : 又一個小商城。litemall = Spring Boot後端 + Vue管理員前端 + 微信小程序用戶前端 + Vue用戶移動端。
  4. vhr :微人事是一個前後端分離的人力資源管理系統,項目採用SpringBoot+Vue開發。
  5. FEBS-Shiro :Spring Boot 2.1.3,Shiro1.4.0 & Layui 2.5.4 權限管理系統。

工具

  1. guava :Guava 是一組核心庫,其中包括新的集合類型(例如multimap 和 multiset),不可變集合,圖形庫以及用於並發、I / O、哈希、原始類型、字符串等的實用程序!
  2. p3c :Alibaba Java Coding Guidelines pmd implements and IDE plugin。Eclipse 和 IDEA 上都有該插件,推薦使用!
  3. arthas : Arthas 是Alibaba開源的Java診斷工具。
  4. hutool : Hutool是一個Java工具包,也只是一個工具包,它幫助我們簡化每一行代碼,減少每一個方法,讓Java語言也可以「甜甜的」。
  5. thingsboard :開源物聯網平台 - 設備管理,數據收集,處理和可視化。

開源項目推薦

作者的其他開源項目推薦:

  1. JavaGuide:【Java學習+面試指南】 一份涵蓋大部分Java程式設計師所需要掌握的核心知識。
  2. springboot-guide : 適合新手入門以及有經驗的開發人員查閱的 Spring Boot 教程(業餘時間維護中,歡迎一起維護)。
  3. programmer-advancement : 我覺得技術人員應該有的一些好習慣!
  4. spring-security-jwt-guide :從零入門 !Spring Security With JWT(含權限驗證)後端部分代碼。

碼農三哥,一名普通程式設計師,會點java軟體開發,對AI人工智慧有點興趣,後續會每日分享些關於網際網路技術方面的文章,感興趣的朋友可以關注我,一起交流學習。

想轉型或剛步入程式設計師Java開發的朋友,有問題可以留言或私信我!

關鍵字: