搜尋
首頁Javajava教程Java開發中常用的工具類別庫有哪些

Java開發過程中常用的工具類別庫

# Apache Commons類別庫

Apache?Commons是一個非常有用的工具包,為解決各種實際的問題提供了通用現成的程式碼,不需要我們程式設計師再重複造輪子。關於這個類別庫的詳細介紹可以訪問官網介紹。下面表格列出了部分的工具包。我們平時開發過程中可以依照自己的需求挑選合適的工具包。

字節碼工程庫 - 分析、建立和操作 Java 類別檔案# 6.3.1# 1.9.3# 3.1 2008/6/2 2017/3/9 2019/2/16 2019/2/5# 加密 CSV# 守護程式 DBCP# DbUtils 消化器# 電子郵件###### 用於從 Java 發送電子郵件的庫。 Java 中用於處理外部程序執行和環境管理的 API。 1.4 1 2018-??-?? 2009/2/20 2017/10/15 2013/10/14 2018/8/23 網###### 網路實用程式和協定實現的集合。 數字類型(複數、四元數、分數)和實用程式(陣列、組合)。# 物件圖片導航語言 2.6.2 2008/2/28 Apache Commons Text 是一個專注於字串演算法的函式庫。 1.6 2.3# 2
成分###### 描述###### 最新版本###### 已發布 BCEL
2019/3/24 BeanUtils 圍繞 Java 反射和內省 API 的易於使用的包裝器。
2016/9/26 BSF Bean 腳本框架 - 腳本語言的接口,包括 JSR-223
2010/6/24 鏈###### 責任鏈模式實作。 1.2
命令列 命令列參數解析器。 1.4
編解碼器 通用編碼/解碼演算法(例如語音、base64、URL)。 # 1.12
收藏 擴充或增強 Java 集合框架。 # 4.3
壓縮###### 定義用於處理 tar、zip 和 bzip2 檔案的 API。 # 1.18 2018/8/16
配置###### 讀取各種格式的配置/首選項檔。 # 2.4 2018/10/29
使用 AES-NI 封裝 Openssl 或 JCE 演算法實作進行最佳化的加密庫。 1.0.0 2016/7/22
用於讀取和寫入逗號分隔值檔案的元件。 1.6 2018/9/25
類似 unix-daemon 的 java 程式碼的替代呼叫機制。 1.0.15 2013/4/3
資料庫連線池服務。 2.6.0 2019/2/19
JDBC 幫助程式庫。 1.7 2017/7/20
XML 到 Java 物件的對應實用程式。 3.2 2011/12/13
# 1.5 2017/8/1 執行
1.3 2014/11/6 上傳文件###### Servlet 和 Web 應用程式的檔案上傳功能。
2019/1/16 函子 函子是一個可以作為物件或代表單一通用函數的物件進行操作的函數。
2011-??-?? # 幾何學###### 空間和座標。 1
# 成像(以前稱為 Sanselan) # 一個純Java圖像庫。 0.97-培養箱
IO I/O 實用程式集合。 2.6
# JCI Java編譯器介面 1.1
# JCS Java快取系統 2.2,1
果凍###### 基於 XML 的腳本和處理引擎。 # 1.0.1 2017/9/27
傑克斯 擴展了 JSTL 表達式語言的表達式語言。 3.1 2017/4/14
JXPath # 使用 XPath 語法操作 Java Bean 的實用程式。 1.3 2008/8/14
為 java.lang. 中的類別提供額外的功能 3.9 2019/4/15
# 日誌記錄 圍繞各種日誌記錄 API 實現的包裝。 # 1.2 2014/7/11
數學###### 輕量級、獨立的數學和統計組件。 3.5 2015/4/17
# 3.6 2017/2/15 # 數字
1 2017-??-?? # OGNL
4 2013-??-?? # 水池###### 通用物件池元件。
2019/4/11 代理人###### 用於建立動態代理的庫。 1
#
RDF 可以由 JVM 上的系統實現的 RDF 1.1 的常見實作。 0.3.0-孵化 2016/11/15
# RNG 隨機數產生器的實作。 1.2 2018/12/12
# SCXML # 狀態圖 XML 規範的實現,旨在建立和維護 Java SCXML 引擎。它能夠執行使用 SCXML 文件定義的狀態機,並抽像出環境介面。 0.9 2008/12/1
統計數據###### 統計數據。###### 0.1 ????-??-?? # 文字
1.6 2018/10/16 # 驗證器###### 在 xml 檔案中定義驗證器和驗證規則的框架。
2017/2/21 VFS 虛擬檔案系統元件,用於將檔案、FTP、SMB、ZIP 等視為單一邏輯檔案系統。
2019/2/4 韋弗 提供一個簡單的方法來增強(編織)已編譯的字節碼。
2018/9/7

除了上面表格中的工具包,Apache Common專案還包括以下幾個工具包,其中的http-client是我們平常非常常用的。

  • Cactus: Cactus is a simple test framework for unit testing server-side java code (Servlets, EJBs, Tag Libs, Filters, ...). The intent of Cactus is to lower the cost of writing tests for server-side code.

  • HiveMind: HiveMind is a services and configuration microkernel. HiveMind allows you to create your application using a service oriented architecture.

  • HttpClient 3.x: Framework for working with the client-side of the HTTP protocol.

  • Naming: The Naming subproject will contain common JNDI code along with various JNDI providers.

Guava類別庫

Guava工程包含了若干被Google的Java專案廣泛依賴的核心庫,例如:集合[collections] 、快取[caching] 、原生類型支援[primitives support] 、並發庫[concurrency libraries] 、通用註解[common annotations] 、字串處理[string processing] 、I/O 等等。以下列出Guava工具包中常用的功能點,以便在需要的時候查閱使用。

基本工具 [Basic utilities]
  • # 使用和避免null:null是模稜兩可的,會造成令人困惑的錯誤,有些時候它讓人很不舒服。很多Guava工具類別用快速失敗拒絕null值,而不是盲目地接受。

  • 前置條件: 讓方法中的條件檢定更簡單。

  • 常見Object方法: 簡化Object方法實現,如hashCode()和toString()。

  • 排序: Guava強大的」流暢風格比較器”

  • Throwables:簡化了異常和錯誤的傳播與檢查。

集合[Collections]

Guava對JDK集合的擴展,這是Guava最成熟和為人所知的部分

  • 不可變集合: 用不變的集合進行防禦性程式設計和效能提升。

  • 新集合類型: multisets, multimaps, tables, bidirectional maps等。

  • 強大的集合工具類別: 提供java.util.Collections中沒有的集合工具。

  • 擴展工具類別:讓實作和擴展集合類別變得更容易,例如建立Collection的裝飾器,或實作迭代器。

快取[Caches]

Guava Cache:本地快取實現,支援多種快取過期策略。

函數式風格[Functional idioms]

Guava的函數式支援可以顯著簡化程式碼,但請謹慎使用它。

並發[Concurrency]

# 強大而簡單的抽象,讓寫正確的並發程式碼更簡單

  • ListenableFuture:完成後觸發回呼的Future

  • Service框架:抽象化可開啟和關閉的服務,幫助你維護服務的狀態邏輯

# 字串處理[Strings]

非常有用的字串工具,包括分割、連接、填充等操作

原生型別[Primitives]

# 擴充 JDK 未提供的原生類型(如int、char)操作, 包含某些類型的無符號形式

# 區間[Ranges]

可比較類型的區間API,包括連續和離散類型

I/O

# 簡化I/O尤其是I/O流和檔案的操作,針對Java5和6版本

散列[Hash]

提供比Object.hashCode()更複雜的雜湊實現,並提供布魯姆過濾器的實作

# 事件匯流排[EventBus]

# 發布-訂閱模式的元件通信,但元件不需要明確地註冊到其他元件中

數學運算[Math]

最佳化的、充分測驗的數學工具類別

# 反射[Reflection]

Guava 的 Java 反射機制工具類別

Spring中常用的工具類別

  • FileCopyUtils;

  • WebUtil;

以上是Java開發中常用的工具類別庫有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除
如何將Maven或Gradle用於高級Java項目管理,構建自動化和依賴性解決方案?如何將Maven或Gradle用於高級Java項目管理,構建自動化和依賴性解決方案?Mar 17, 2025 pm 05:46 PM

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

如何使用適當的版本控制和依賴項管理創建和使用自定義Java庫(JAR文件)?如何使用適當的版本控制和依賴項管理創建和使用自定義Java庫(JAR文件)?Mar 17, 2025 pm 05:45 PM

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

如何使用咖啡因或Guava Cache等庫在Java應用程序中實現多層緩存?如何使用咖啡因或Guava Cache等庫在Java應用程序中實現多層緩存?Mar 17, 2025 pm 05:44 PM

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

如何將JPA(Java持久性API)用於具有高級功能(例如緩存和懶惰加載)的對象相關映射?如何將JPA(Java持久性API)用於具有高級功能(例如緩存和懶惰加載)的對象相關映射?Mar 17, 2025 pm 05:43 PM

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類負載機制如何起作用,包括不同的類載荷及其委託模型?Java的類負載機制如何起作用,包括不同的類載荷及其委託模型?Mar 17, 2025 pm 05:35 PM

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器