輕量!Google 開源了一個簡易版 Spring !
Guice:輕量級依賴注入框架
Guice 是 Google 開源的一個輕量級依賴注入框架,相當於一個功能極簡化的輕量級 Spring Boot。在某些情況下非常實用,就比如說我們的項目只需要使用依賴注入,不需要 AOP 等功能特性。
Guice 的 Hello World 示例如下:
做 Java 後端開發的朋友一定不要離開了 Spring 就感覺啥也幹不了了,也一定不要單純地認爲 Spring 就是 Web 框架的唯一選擇。Java 生態非常優秀尤其是 Web 開發領域,Github 上還有非常多優秀的開源 Web 框架。
JsonPath:JSON 數據處理
JsonPath 是一個簡單易用的 JSON 數據工具類庫,提供了開箱即用的 JSON 解析 API,內置了很多運算符和方法,支持 fluent API ,使用起來非常酸爽。
假設我們有如下 JSON 數據需要處理。
如果我們需要讀取出所有書的作者,下面兩行代碼就可以了:
String json = "...";
List<String> authors = JsonPath.read(json, "$.store.book[*].author");
如果我們需要讀取出金額大於 10 的書,下面一行代碼就可以了:
List<Map<String, Object>> expensiveBooks = JsonPath
.using(configuration)
.parse(json)
.read("$.store.book[?(@.price > 10)]", List.class);
項目地址:https://github.com/json-path/JsonPath 。
tianai-captcha:好看又好用的滑塊驗證碼
tianai-captcha 是一個開源的 Java 滑塊驗證碼 解決方案,開箱即用,支持行爲軌跡校驗和混淆滑塊。
項目地址:https://gitee.com/tianai/tianai-captcha 。
Testcontainers:測試工具庫
Testcontainers 是一個支持 JUnit 的測試工具庫,提供輕量級的且一次性的常見數據庫測試支持、Selenium Web 瀏覽器或者其他任何可以在 Docker 容器中運行的實例支持。
Testcontainers 提供的一次性常見數據庫測試支持有什麼用呢?簡單舉個例子:假設我們有一個依賴 Redis 的程序,我們需要爲其編寫測試。如果測試直接使用的是本地安裝的 Redis ,會帶來很多麻煩,這意味着每個開發人員以及 CI 機器都必須安裝 Redis 。並且,爲了保證測試的正常運行 ,Redis 的版本也要儘量保持一致。顯然,這是不太現實的!
Thoughtworks 第 26 期技術雷達這樣寫到:
根據長期使用 Testcontainers 的經驗,我們認爲它是創建可靠的環境來運行自動化測試的默認選項。Testcontainers 是一個擁有多種語言版本 的庫,並且 docker 化了常見的測試依賴——包括了不同種類的數據庫,隊列技術,雲服務和 UI 測試依賴(例如 web 瀏覽器),還具有按需運行自定義 Dockerfile 的能力。它與類似 JUnit 的測試框架兼容,而且足夠靈活,可以讓用戶管理容器的生命週期和高級網絡,並迅速建立一個集成測試環境
-
項目地址:https://github.com/testcontainers/testcontainers-java
-
官網 :https://www.testcontainers.org/
libgdx:
libgdx 是一款跨平臺的 Java 遊戲開發框架,適用於 Windows、Linux、macOS、Android、您的瀏覽器和 iOS,穩定且成熟。
並且,libgdx 的生態系統裏有非常多現成的工具庫,可以幫助我們節省很多事情。
如果你想要使用 Java 開發遊戲的話,一定要來看看這個項目。
項目地址:https://github.com/libgdx/libgdx
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/E3xjFl_is4HGWBhmtSpBmQ