導航:首頁 > 編程語言 > 常用java開源庫

常用java開源庫

發布時間:2023-08-26 06:15:50

『壹』 java開源項目有哪些

Rx 的 Java 實現 RxJava

star:26782;fork:4718

.Net響應式編程框架 Rx 的Java版本開源實現,有Groovy, Clojure, Scala and JRuby版本的實現。

分布式搜索引擎 ElasticSearch

star:24646;fork:8723

Elasticsearch 是一個分布式的 RESTful 風格的搜索和數據分析引擎,能夠解決越來越多的用例。作為 Elastic Stack 的核心,它集中存儲您的數據,幫助您發現意料之中以及意料之外的情況。這個實時的分布式搜索分析引擎, 它能讓你以一個之前從未有過的速度和規模,去探索你的數據。

REST 客戶端 Retrofit

star:23443;fork:4731

retrofit 是一個類型安全的 REST 客戶端,用於 Android 平台。

HTTP+SPDY 客戶端開發包 okhttp

star:21981;fork:5311

okhttp 是一個 Java 的 HTTP+SPDY 客戶端開發包,同時也支持 Android。

Java 設計模式 java-design-patterns

star:21456;fork:7162

設計模式是程序員在設計應用程序或系統時解決常見問題的最佳實踐,重用設計模式有助於防止可能導致重大問題的細微問題,同時熟悉模式的程序員和架構師的代碼也更具可讀性。

Google的Java常用類庫 Guava

star:18414;fork:4327

Guava 中文是石榴的意思,該項目是 Google 的一個開源項目,包含許多 Google 核心的 Java 常用庫。

Android 註解工具 ButterKnife

star:17845;fork:3662

Butter Knife 是 Android 視圖欄位和方法綁定,使用註解處理來生成樣板代碼。

『貳』 java的開源工具有哪些

看來要逼我出絕招拉。
幾個開源工具推薦
目前進行一些項目,經常需要到現場開發。當在公司內部的時候,可以充分享受公司內部的軟體資源,如配置管理工具(ClearCase)、設計工具(Rose)、測試管理(ClearQuest),項目管理(Project)等。但這些都是非常龐大又非常復雜,在客戶現場條件下根本無法使用。
現在開源的工具,又小巧,又簡單方便,在現場開發或小型項目中特別有用。下面簡單推薦幾種,拋磚引玉。
1 Ganttproject 1.11.1:項目計劃工具
網址:http://ganttproject.sourceforge.net
你可以使用這款軟體來制定項目計劃並跟蹤項目資源。Ganttproject 能夠將項目的各個組成部分分層次排列,並與相應的人員和時間期限掛鉤。它使用一個條狀圖來顯示項目的進展情況,你能從中看到每項任務的預定完成時間和實際的進度。你可以為每個項目組成員分配任務,設定任務的優先順序和完成期限。Ganttproject的輸出功能相當完備,不僅可以把數據保存為pdf文件和 csv電子數據表文件,還可以輸出為HTML文件發布到Internet上。由於Ganttproject是一款純Java應用程序,因此它可以運行於 Windows、Linux和Mac OS等多個平台上。

2 DotProject 2.0.4:項目管理工具
網址:http:// www.dotproject.net
dotProject是一個基於LAMP的開源項目管理軟體。開發語言為PHP,資料庫默認推薦使用MySQL(基本上可以理解為只能用Mysql)。項目管理工具,當前版本支持界面很漂亮。

3 NVU 1.0:HTML編輯器
網址:http:// www.nvu.com
NVU 實際上起源於Netscape,還記得那個有點笨拙的HTML編輯器Netscape Composer嗎?NVU就是在它的基礎上進一步開發出來的,不過,最新版本的NVU已經不是當年的那隻丑小鴨,它完全能夠勝任專業網頁設計工作的需求。與FrontPage和Dreamweaver這類商業HTML編輯器一樣,這款軟體(目前支持Windows、Linux和Mac OS平台)同時提供了源代碼直接編輯和「所見即所得」這兩種網頁設計環境。
NVU嚴格遵循W3C聯盟的標准,其生成的HTML代碼也相當緊湊,它會幫你排除錯誤或冗餘的代碼。這款編輯器提供了拼寫和語法檢查功能,並且允許你採用不同的主題方案對界面進行定製。你可以自行創建並保存模版,還可以利用內置的FTP客戶端把頁面迅速上傳到Web伺服器上。
4. Mozilla Firefox:Web瀏覽器
網址:www.mozilla.org
Firefox 瀏覽器應該是Mozilla迄今為止最成功的一個開源軟體項目。從2004年11月到2005年2月,這款 Internet Explorer的替代軟體已經獲得了超過2500萬的下載次數(僅指官方網站和鏡像網站的下載次數)。如果加上其它的下載網址以及用光碟方式發放的 Firefox,這個數量可能還會翻倍。Firefox擁有不少值得稱贊的易用性功能,比如支持標簽式瀏覽窗口、具備開放的插件介面,你可以安裝廣告攔截器、Google搜索條以及其它大量插件。Firefox不支持Visual Basic腳本、ActiveX和BHO(Browser Helper Objects),相對來說不太容易遭受惡意HTML代碼的攻擊,當然你也不能完全高枕無憂。
5 Freemind 0.8:Mindmap軟體
網址:http://freemind.sourceforge.net
什麼是Mindmap?它是由英國人托尼?巴贊創造的一種筆記方法,和傳統的直線記錄方法完全不同,它以直觀形象的圖示建立起各個概念之間的聯系。在國內,MindMap又被稱為腦圖或思維導圖。Freemind 是一款Java程序,它可以幫你在一些隨機的內容之間建立起有機的聯系。
在Freemind中,首先你需要選中一個主題,然後從幾個節點開始不斷豐富 Mindmap的內容。每次加入新的元素,你都可以用連線將它與原有的元素聯系起來。最終的Mindmap可以用HTML文檔的形式輸出。該軟體的幫助信息十分全面,即便你對Mindmap不太熟悉也可以按照它的提示很快掌握Mindmap概念及軟體的使用。
6 SubVersion1.4:版本管理工具

網址:http://www.subversion.org.cn/

Subversion是新一代的版本控制工具,不僅可以管理程序源代碼,也可以應用於其他協作管理數據的工作,例如使用Subversion來合作寫樂譜,美工用來共同作圖,功能很強大。且有專門的中文網站提供更多的技術支持、輔助工具和幫助。

7 BugFree1.0:Bug管理軟體
網址: http://bugfree.1zsoft.com/
BugFree是借鑒微軟的研發流程和Bug管理理念,使用PHP+MySQL獨立寫出的一個Bug管理 系統。簡單實用、免費並且開放源代碼(遵循GNU GPL)。是由國人自己自己開發的,強力支持。

8,eclipse
9,myeclipse
10,spring framework
11,netbean

『叄』 java開源的項目

Sotacs 【Java開源 未分類開源項目】
Tapestry4 web框架組件:
SpringContracts 【Java開源 未分類開源項目】
SpringContracts是契約式設計(Design by Contract)的一個Java解決方案,能夠無縫地集成到Spring框架中。基於Annotations,AOP並且支持EL表達式語言。
Jettison 【Java開源 未分類開源項目】
Jettison是一組StAX parser與writer用於讀寫JSON。這就使得可以在像CXF,XFire這樣的service框架中實現基於JSON的web service。
jEdit - Plugin Central 【Java開源 未分類開源項目】
jEdit Plugin Central是JEdit文本編輯器最主要的在線插件庫。可以結合該插件庫,通過jEdit的插件管理器來安裝,更新和刪除插件。所有插件列表
JCL 【Java開源 未分類開源項目】
JCL提供一個類庫用於從JARs中載入classe。它特別適用於在一個應用程序中有區別地載入多個版本中相同的class。
JXTA 【Java開源 未分類開源項目】
Sun微系統公司公開了旨在建立P2P(Peer to Peer)通用技術基礎的JXTA計劃。JXTA技術是網路編程和計算的平台,用以解決現代分布計算尤其是點對點(P2P)計算中出現的問題。。
jOrgan 【Java開源 未分類開源項目】
jOrgan是一個Java開發的虛擬管風琴。
JOnbAS 【Java開源 未分類開源項目】
基於NetBeans平台的JOnAS插件。
RoX 【Java開源 未分類開源項目】
RoX(RPC over XML)是構建在Java1.4 NIO之上一個完整XML-RPC實現。
Spring-Dashboard 【Java開源 未分類開源項目】
利用Spring-Dashboard開發人員和測試人員能夠監測spring web應用程序中的流程並收集在應用程序中資源使用情況的統計信息。
jUploadr 【Java開源 未分類開源項目】
jUploadr是一個跨平台,跨站點的照片上傳工具。當前jUploadr可運行在Windows、Linux和OS X平台之上並支持包括Flickr與Zooomr。它可以讓你在上傳之前設置好照片的屬性。jUploadr還支持批處理。
Bottomline 【Java開源 未分類開源項目】
Bottomline是一套利用JCL直接從JAR 文檔載入資料庫驅動的JDBC Bridge API。Bottomline使用jdbc:bottomline bridge從各自的JAR文件載入多個驅動。與JDBC的不同之處在於, Bottomline使用自定義的class loaders來裝載驅動完全獨立於JVM的bootstrap class loader.
BackupEasy 【Java開源 未分類開源項目】
BackupEasy是一個按日期/時間設定自動備份文件夾和文件的軟體。它採用Java開發,界面簡單,支持FTP備份,支持簡體中文。
SubEtha 【Java開源 未分類開源項目】
SubEtha是一個成熟的郵件列表管理系統,它是一個採用EJB3與JMS開發的三層J2EE應用程序。 SubEtha非常容易安裝在Windows與Unix平台上,一個友好的web界面可用於管理所有配置,支持虛擬域名,支持用戶擁有多個email地址,智能附件處理,可配置的消息處理過濾器,基於per-list 的角色許可權控制等等。
JIExplorer 【Java開源 未分類開源項目】
JIExplorer是一個採用Java開發的看圖工具。支持幻燈片,放大/縮小,全屏等功能。此外還支持按關鍵字進行圖片分類管理,把圖片保存到HSQLDB與MySQL資料庫中。
j-Interop 【Java開源 未分類開源項目】
j-Interop是實現DCOM wire protocol (MSRPC)的一個開源類包。可用於開發雙向,Non-Native,能夠與任何COM組件交互的純Java應用程序。該項目全部採用純Java實現並且沒有使用JNI(Java Native Interface)來提供對COM的訪問。
QALab 【Java開源 未分類開源項目】
QALab這個工具能夠收集,整理來自一些QA工具的數據如:pmd,checkstyle,FindBugs,Cobertura和Simian,並跟蹤它們的overtime。這可以幫助開發人員,架構師與項目管理者掌握項目QA的趨勢。
SOJO 【Java開源 未分類開源項目】
SOJO提供一個類庫用於把POJOs轉換成指定的格式可以是CSV、XML、JSON等,以便與非Java的程序進行通信。這些轉換都是可插拔的,所以可以自定義自己想要轉換的格式。
Subsonic 【Java開源 未分類開源項目】
Subsonic是一個在線媒體播放系統。它能夠將指定路徑下的音樂(mp3,aac,ogg,wma等)和視頻轉換播放流。需要Java5.0。
Glyph 【Java開源 未分類開源項目】
Glyph是一組用於加快開發基於Jini應用程序的工具類與J2SE5.0注釋。
nbtapestrysupport 【Java開源 未分類開源項目】
nbtapestrysupport該項目是一個NetBeans插件主要是為用Tapestry框架進行的web開發提供支持。功能包括:在Tapestry配置文件中為class name,file和librarie提供超鏈接支持。只需按拄CTRL然後選中類名就能夠轉到相應的類。提供向導來創建一個新的Tapestry項目所需要的頁面,組件和類庫等。一個組件面板允許用拖放的方式來設計頁面與組件。為不同的配置文件定製編輯器。集成Tapestry的開發文檔。
DContract 【Java開源 未分類開源項目】
該項目提供一個用於處理數字合同(digital contract)的Java工具箱。
GenericRCP 【Java開源 未分類開源項目】
GenericRCP是一個基於SpringRCP開發的胖客戶端,它能夠根據hibernate domain模型自動生成一個GUI用於修改/刪除/新增將被持久化的Java對象。

『肆』 JAVA的常用的類庫有哪些

一、日誌相關類庫

日誌庫是很常見的,因為你在每一個項目中都需要他們。列印日誌是伺服器端應用中最重要的事情,因為日誌是你了解你的程序發生了什麼的唯一途徑。盡管JDK附帶自己的日誌庫,但是還是有很多更好的選擇可用,例如 Log4j 、 SLF4j 和 LogBack。

Java開發人員應該熟悉日誌記錄的利弊, 並且了解為什麼SLF4J要比Log4J要好。

二、JSON解析庫

在當今世界的web服務和物聯網中(IoT),JSON已經取代了XML,成為從客戶端到伺服器傳送信息的首選協議。有一個好消息和一個壞消息。壞消息 是JDK沒有提供JSON庫。好消息是有許多優秀的第三方庫可以用來解析和創建JSON消息,如 Jackson 和 Gson

一個Java web開發人員應該熟悉Jackson 和 Gson這兩種中的至少一種庫。

三、單元測試庫

單元測試技術的使用,是區分一個一般的開發者和好的開發者的重要指標。程序員經常有各種借口不寫單元測試,但最常見的借口就是缺乏經驗和知識。常見的單測框架有 JUnit , Mockito 和PowerMock 。

《2020最新Java基礎精講視頻教程和學習路線!》


四、通用類庫

有幾個很好的第三方通用庫可供Java開發人員使用,例如 Apache Commons 和 Google Guava 。我會經常在我的代碼中使用這些通用類庫,因為這些類庫都是經過無數開發者實踐過的,無論是實用性還是在性能等方面都是最佳的。

五、Http 庫

我不是很喜歡JDK的一個重要原因就包括他們缺乏對HTTP的支持。雖然可以使用java.net包類,但是這和直接使用像 Apache HttpClient 和 HttpCore 等開源類庫比起來麻煩太多了。

盡管JDK 9將開始HTTP 2.0,也對HTTP的支持做了優化,但是我還是強烈建議所有的Java開發人員熟悉流行的HTTP處理類庫,例如HttpClient和HttpCore HTTP等庫。

六、XML解析庫

市面上有很多XML解析的類庫,如 Xerces , JAXB , JAXP , Dom4j , Xstream 等。 Xerces2是下一代高性能,完全兼容的XML解析工具。Xerces2定義了 Xerces Native Interface (XNI)規范,並提供了一個完整、兼容標準的 XNI 規范實現。該解析器是完全重新設計和實現的,更簡單以及模塊化。

七、Excel讀寫庫

許多應用程序需要提供把數據導出到Excel的功能,如果你要做相同的Java應用程序,那麼你需要 Apache POI API 。

這是一個非常豐富的類庫,你可以從Java程序讀寫XLS文件。

八、位元組碼庫

如果你正在編寫一個框架或者類庫。有一些受歡迎的位元組碼庫如 javassist 和 Cglib Nodep 可以供你選擇,他們可以讓你閱讀和修改應用程序生成的位元組碼。

Javassist使得JAVA位元組碼操作非常簡單。它是一個為編輯Java位元組碼而生的類庫。 ASM 是另一個有用的位元組碼編輯庫。

九、資料庫連接池庫

如果你的Java應用程序與資料庫交互不是使用資料庫連接池庫的話,那麼你就大錯特錯了。因為在運行時創建資料庫連接非常耗時並且會拖慢你的程序。所以牆裂建議使用,有些好用的連接池可供選擇,如 Commons Pool 和 DBCP 。

在web應用程序中,web伺服器通常提供了這些功能。但是在java項目中需要把資料庫連接池的類庫導入到應用中。

十、消息傳遞庫

像日誌和資料庫連接池一樣,消息傳遞也是很多實際的Java項目中必備的。Java提供了JMS Java消息服務,但這不是JDK的一部分,你需要單獨的引入jms.jar。類似地,如果您准備使用第三方消息傳遞協議, Tibco RV 是個不錯的選擇。

十一、PDF處理庫

除了Excel和Word,PDF也是一種常用的文件格式。如果你的應用程序要支持PDF格式的文件處理,你可以使用 iText 和 Apache FOP 類庫。兩者都提供了非常有用的PDF處理功能。

十二、日期和時間庫

在Java之前,JDK的日期和時間庫一直被人們所詬病,比如其非線程安全的、不可變的、容易出錯等。很多開發人員會選擇更好用的 JodaTime 類庫。

但是在Java8推出之後,我們就可以徹底放棄JodaTime了,因為Java 8提供了其所有功能。但是,如果你的代碼運行在一個低版本的JDK中,那麼JodaTime還是值得使用的。

十三、集合類庫

雖然JDK有豐富的集合類,但還是有很多第三方類庫可以提供更多更好的功能。如 Apache Commons Collections 、 Goldman Sachs collections 、 Google Collections 和 Trove 。Trove尤其有用,因為它提供所有標准Collections 類的更快的版本以及能夠直接在原語(primitive)(例如包含int 鍵或值的Map 等)上操作的Collections 類的功能。

FastUtil是另一個類似的API,它繼承了Java Collection Framework,提供了數種特定類型的容器,包括映射map、集合set、列表list、優先順序隊列(prority queue),實現了java.util包的標准介面(還提供了標准類所沒有的雙向迭代器),還提供了很大的(64位)的array、set、list,以及快速、實用的二進制或文本文件的I/O操作類。

十四、郵件API

javax.mail 和 Apache Commons Email 提供了發送郵件的api。它們建立在JavaMail API的基礎上,提供簡化的用法。

十五、HTML解析庫

和XML與JSON類似,HTML是另外一種我們可能要打交道的傳輸格式。值得慶幸的是,我們有jsoup可以大大簡化Java應用程序使用HTML。你不僅可以使用 JSoup 解析HTML還可以創建HTML文檔。

十六、加密

Apache Commons家族中的 Commons Codec 就提供了一些公共的編解碼實現,比如Base64, Hex, MD5,Phonetic and URLs等等。

十七、嵌入式SQL資料庫庫

我真的是非常喜歡像 H2 這種內存資料庫,他可以嵌入到你的Java應用中。在你跑單測的時候如果你需要一個資料庫,用來驗證你的SQL的話,他是個很好的選擇。順便說一句,H2不是唯一嵌入式DB,你還有 Apache Derby 和 HSQL 可供選擇。

十八、JDBC故障診斷庫

有不錯的JDBC擴展庫的存在使得調試變得很容易,例如P6spy,這是一個針對資料庫訪問操作的動態監測框架,它使得資料庫數據可無縫截取和操縱,而不必對現有應用程序的代碼作任何修改。 P6Spy 分發包包括P6Log,它是一個可記錄任何 Java 應用程序的所有JDBC事務的應用程序。其配置完成使用時,可以進行數據訪問性能的監測。

十九、序列化庫

Google Protocol Buffer是一種輕便高效的結構化數據存儲格式,可以用於結構化數據串列化,或者說序列化。它很適合做數據存儲或 RPC 數據交換格式。可用於通訊協議、數據存儲等領域的語言無關、平台無關、可擴展的序列化結構數據格式。目前提供了 C++、Java、python 三種語言的 API。

二十、網路庫

一些有用的網路庫主要有 Netty 的和 Apache MINA 。如果您正在編寫一個應用程序,你需要做的底層網路任務,可以考慮使用這些庫。

這都是每位Java開發人員應該熟悉的,並且十分有用的庫。Java生態系統非常龐大的,你會發現有很多不同的類庫可以做不同的事情。每個你想到的東西,都可能有一個庫可以做到。

要相信,你遇到的問題,肯定不止你一個遇到過。
要相信,也許有很多人比你更勤奮。
要相信,你用或不用,輪子就在那裡。
要相信,使用這些類庫,你和你的代碼都會變得更好。

原文鏈接:https://blog.csdn.net/u011001084/article/details/79216958

『伍』 java內部模式識別的開源庫有哪些

1.機器學習開源軟體網(收錄了各種機器學習的各種編程語言學術與商業的開源軟體)
http://mloss.org
2 偶爾找到的機器學習資源網:(也非常全,1和2基本收錄了所有ML的經典開源軟體了)
http://www.dmoz.org/Computers/Artificial_Intelligence/Machine_Learning/Software/
3 libsvm (支持向量機界最牛的,不用多說了,台灣大學的林教授的傑作)
http://www.csie.ntu.e.tw/~cjlin/libsvm/
4 WEKA (基於java的機器學習演算法最全面最易用的開源軟體)
http://www.cs.waikato.ac.nz/ml/weka/
5 scikit (本人最喜歡的一個基於python的機器學習軟體,代碼寫得非常好,而且官方的文檔非常全,所有都有例子,演算法也齊全,開發也活躍
,強烈推薦給大家用)
http://scikit-learn.org/stable/
6 OpenCv(最牛的開源計算機視覺庫了,前途無可限量,做圖像處理與模式識別的一定要用,總不能整天抱著matlab做實驗和工業界脫節吧,但是有一定難度)
http://opencv.willowgarage.com/wiki/
7 Orange (基於c++和python介面的機器學習軟體,界面漂亮,調用方便,可以同時學習C++和python,還有可視化的功能,)
http://orange.biolab.si/
8 Mallet (基於JAVA實現的機器學習庫,主要用於自然語言處理方面,特色是馬爾可夫模型和隨機域做得好,可和WEKA互補)
http://mallet.cs.umass.e/
9 NLTK(PYTHON的自然處理開源庫,非常易用,也強大,還有幾本orelly的經典教程)
http://nltk.org/
10 lucene(基於java的包括nutch,solr,hadoop,mahout等全套,是做信息檢索和搜索引擎的同志們必學的開源軟體了,學JAVA的必學)
http://lucene.apache.org/

閱讀全文

與常用java開源庫相關的資料

熱點內容
單片機100位百位符號 瀏覽:684
用友通加密狗壞了 瀏覽:548
如何在伺服器上配置外網網址 瀏覽:840
阿里雲伺服器的硬體在哪裡 瀏覽:52
python自動注冊谷歌 瀏覽:329
phpini驗證碼 瀏覽:824
解壓後的文件怎麼驅動 瀏覽:326
老闆要程序員加班 瀏覽:414
泰爾pdf 瀏覽:311
視頻轉碼壓縮哪款軟體好 瀏覽:647
盯盯拍記錄儀下載什麼app 瀏覽:436
新東方新概念英語pdf 瀏覽:696
python中如何創建菜單欄 瀏覽:507
中石化app那個叫什麼名 瀏覽:706
借貸寶合集解壓密碼 瀏覽:640
python爬取網頁代碼 瀏覽:480
efs加密對微信無效 瀏覽:496
劉秀pdf 瀏覽:998
腳上長黑刺是什麼app 瀏覽:703
演算法工程師上海 瀏覽:390