<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          幾個很火的 Java 項目,開源!

          共 3494字,需瀏覽 7分鐘

           ·

          2021-12-31 13:36

          大家好,我是魚皮,今天看到好友 Guide 哥推薦了幾個 Java 的開源項目,都很不錯,給大家分享一下~

          分別是:

          • Mindustry :一款 Java 語言編寫的沙盒塔防游戲,目前已經上架 Apple Store 和 Steam。
          • Caffeine :性能超強的本地緩存解決方案。
          • JADX : 一款強大的反編譯工具。
          • Debezium :一個用于追蹤數據更改(change data capture ,CDC)的開源項目。你可以通過 Debezium 輕松實現數據同步,將一個數據源中的數據同步到其他數據源,比如將 MySQL 中的數據同步到 ES 中。
          • JNDI-Injection-Exploit :一個開箱即用的 JNDI 注入工具。

          Mindustry:沙盒塔防游戲

          Mindustry 是一款 Java 語言編寫的沙盒塔防游戲,目前已經上架 Apple Store、Google Play 和 Steam,支持 Windows,Linux,安卓等平臺。

          是的?。?!你沒看錯,這款游戲就是使用 Java 語言編寫的。

          目前的話,這個游戲在 Apple Store 評分 4.7,Google Play 評分 4.6, Steam 上也有 96% 的好評。非常厲害了!

          這個游戲的很多用戶直呼:“一玩就停不下來了!”

          另外,這個項目使用 Gradle 構建,如果你想要在本地運行這個游戲的話,你的 JDK 版本至少是 JDK16。

          作者在 README 文檔中提供了這個項目詳細的運行方法,你可以直接在本地對游戲進行修改。

          不過,最讓我佩服的是這個項目作者的毅力。雖然這個游戲已經發(fā)布 4 年多了,但是作者依然還在不斷維護游戲,不斷完善游戲的玩法。

          大家感受一下項目作者的提交記錄吧!簡直恐怖如斯!

          • 項目地址:https://github.com/Anuken/Mindustry
          • 官網:https://mindustrygame.github.io/

          Caffeine:本地緩存之王

          Caffeine 是一款強大的本地緩存解決方案,性能非常 ??。

          有多牛呢?看下 Caffeine 和其他可以提供本地緩存的工具的性能對比吧!

          Caffeine 和 Guava 一樣,通過 API 的方式即可使用緩存。

          LoadingCache?graphs?=?Caffeine.newBuilder()
          ????.maximumSize(10_000)
          ????.expireAfterWrite(Duration.ofMinutes(5))
          ????.refreshAfterWrite(Duration.ofMinutes(1))
          ????.build(key?->?createExpensiveGraph(key));

          不過,相比于 Guava 提供的緩存功能來說 Caffeine 在各個方面都要更加優(yōu)秀。像 Redisson、Cassandra、Hbase、Neo4j、Druid 等知名開源項目都用到了 Caffeine。

          相關文章推薦:萬字詳解本地緩存之王 Caffeine 的高性能設計之道!

          JADX:強大的反編譯工具

          jadx 是一款功能強大的反編譯工具,使用起來簡單方便,不光提供了命令行程序,還提供了 GUI 程序。一般情況下,我們直接使用 GUI 程序就可以了。

          jadx 支持 Windows、Linux、 macOS,能夠幫我們打開.apk, .dex, .jar,.zip等格式的文件

          就比如說我們需要反編譯一個 jar 包查看其源碼的話,直接將 jar 包拖入到 jadx 中就可以了。效果如下:

          再比如說我們想看看某個 apk 的源碼,我們拿到 apk 之后直接拖入進 jadx 中就可以了。效果如下:

          除此之外,這個工具具備下面這些特性:

          • 自帶強大的搜索功能,支持多種匹配模式;
          • 支持查看類,變量或者方法使用情況;
          • 支持在源碼中添加注釋
          • 支持反混淆
          • ......

          這個工具使用起來還挺簡單的,立個 flag :下周出一篇 JADX 使用介紹的文章。

          項目地址:https://github.com/skylot/jadx

          Debezium:追蹤數據更改

          Debezium 是一個用于追蹤數據更改(change data capture ,CDC)的開源項目,基于 Java 語言,利用 Kafka 和 Kafka Connect 實現持久性、可靠性和容錯性,工作原理類似大家比較熟悉的 Canal、Maxwell,通過數據庫日志來獲取變更。

          CDC(Change Data Capture)是一種軟件設計模式,用于確定和跟蹤已變更的數據,以便可以對更改后的數據采取措施,

          Debezium 已經支持 MySQL、PostgreSQL、Oracle、Cassandra、MongoDB、SQL Server 等數據庫。

          你可以使用 Debezium 來監(jiān)控你的數據庫,每一個提交的行級別(row-level)的更改都會被捕獲。因此,你可以通過 Debezium 輕松實現數據同步,將一個數據源中的數據同步到其他數據源,比如將 MySQL 中的數據同步到 ES 中。

          下圖是基于 Debezium 追蹤數據更改常見的一種架構:

          相對于 ETL 數據同步方案來說,Debezium 這種方式更加靈活。

          Debezium 的官方文檔中還介紹了很多其他有價值的使用場景,感興趣的小伙伴可以自己去看看。

          Debezium常見適用場景
          • 項目地址 :https://github.com/debezium/debezium
          • 中文介紹:https://github.com/debezium/debezium/blob/main/README_ZH.md
          • 官網:https://debezium.io/
          • 官方文檔:https://debezium.io/documentation/

          相關文章推薦:

          JNDI-Injection-Exploit:JNDI 注入工具

          JNDI-Injection-Exploit 這個項目是一個開箱即用的 JNDI 注入工具,用于生成 JNDI 鏈接并啟動后端相關服務,可用于 Fastjson、Jackson 等相關漏洞的驗證。

          JNDI 是什么呢? 簡單來說,JNDI (Java Naming and Directory Interface) 是一組應用程序接口,類似于一個索引中心,它允許客戶端通過 jndiName 來定位用戶、網絡、機器、對象和服務等各種資源。

          //指定需要查找name的名稱
          String?jndiName=?"jndiName";
          //初始化默認環(huán)境
          Context?context?=?new?InitialContext();
          //查找該name對應的資源部
          context.lookup(jndiName);

          當 jndiName 變量可控時,如果獲取到的資源是遠程 class 文件的話,就可能會觸發(fā)執(zhí)行惡意代碼,這也就是我們常說的 JNDI 注入。

          JNDI 這家伙帶來了很多重大的漏洞,就比如前段時間技術圈刷屏的 Log4j2 重大漏洞?就是這玩意引起的。

          項目地址:https://github.com/welk1n/JNDI-Injection-Exploit

          相關文章推薦:

          參考資料

          [1]

          深入理解 JNDI 注入與 Java 反序列化漏洞利用: https://kingx.me/Exploit-Java-Deserialization-with-RMI.html

          [2]

          log4j2 漏洞簡單小計: https://juejin.cn/post/7042458032701177887


          ··········? END? ··············

          往期推薦

          微信發(fā)力了,一鍵部署網站后端!

          考研結束,抓緊做這件事!

          N 年沉淀,騰訊這套系統(tǒng)終于開源!

          一鍵生成幾千套代碼模板,這個神器有多刺激!

          這款內網穿透神器,免費!

          瀏覽 126
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲激情在线 | 啪啪免费视频网站 | 免费观看全黄做爰的视频 | a 在线天堂 | 操逼热在线观看 |