本文由 ImportNew - 邢 敏 翻译自 programcreek。如需转载本文,请先参见文章末尾处的转载要求。
写在前面:
1) 本文列出的名单是根据我自己的调查,并结合个人的经验。有可能是它们不恰恰是最流行的,但至少众所周知的。
2) 我会不断更新这个列表,使之更加完整和准确。感谢您的意见。
一个典型的Java项目依赖于第三方库。本文总结的Java库适用于各种应用,比较流行并且广泛使用。其中一些还提供简单的示例(来自ProgramCreek)。
Java SDK 肯定是使用最广的库,所以本文的名单焦点是流行的第三方库。该列表可能并不完善,所以如果你觉得有什么应该出现在列表中的,请留下您的评论。非常感谢!
1、核心库
Apache Commons Lang:来自Apache的核心库,为java.lang API补充了许多常用的工具类,如字符串操作、对象的创建等。
Google Guava:来自谷歌的核心库,包括集合(Collection)、缓存(Caching)、支持原语(Primitives)等。(示例)
2、HTML、XML Parser
Jsoup:一个简化了的 HTML操作的库。(示例)
STaX:一组可以高效处理 XML的API。 (示例)
3、Web框架
Spring:Java平台上众所周知的开源框架和依赖注入容器。(示例)
Struts2:来自Apache的流行Web框架。 (示例)
Google Web Toolkit:Google提供的开发工具库,主要用于构建和优化复杂的Web程序用。 (示例)
Strips:使用最新Java技术构建的Web程序框架,推荐使用。
Tapestry:面向组件的框架,用于使用Java创建动态、健壮、扩展性高的Web应用程序。
请猛击这里 查看以上面框架之间的比较。
4、图表、报表、图像
JFreeChart:用于创建如条形图、折线图、饼图等图表。
JFreeReport:创建于输出PDF格式的报表。
JGraphT:创建图像,其中只包含由线段连接的点集。
5、窗口
Swing:SDK提供的GUI库。(示例)
SWT:Eclipse提供的GUI库。
SWT与Swing的比较。
6.、GUI框架
Eclipse RCP。(示例)
7、自然语言处理
OpenNLP:来自Apache的自然语言处理库。 (示例)
Stanford Parser:斯坦福大学提供的自然语言处理库。(示例)
如果你是一名NLP专家,请猛击这里 查看更多工具库介绍。
8、静态分析
Eclipse JDT:由IBM提供的静态分析库,可以操作Java源代码。(示例)
WALA:可以处理jar包文件(即字节码)的工具库。(示例)
9、JSON
Jackson: 用于处理JSON数据格式的多用途的Java库。Jackson 旨在快速、准确、轻量、对开人员友好之间找到最好的平衡点。
XStream:一个简单用于对象和XML互相转换的库。
Google Gson:一个专门用于Java对象和Json对象相互转换的工具库。(示例)
JSON-lib:用于 beans、maps、collections、java arrays、XML 和 JSON 之间相互转换操作的工具库。
10、数学
Apache Commons Math:提供数学计算和数值统计需函数的工具库。
11、日志
Apache Log4j:风行一时的日志记录操作库。 (示例)
Logback:当前流行的log4j项目的继任者。
SLF4J(The Simple Logging Facade for Java): 各种日志框架的一个简单的外观或抽象(如java.util.logging 、logback、log4j等),允许用户在部署时加入需要的日志框架。
12、Office
Apache POI:利用其提供的APIs,可以使用纯Java代码操作各种基于微软OLE2合成文档格式的文档。
Docx4j:一个用于创建、操作微软公开的XML文件的库(支持Word docx、 Powerpoint pptx和Excel xlsx)。
13、日期和时间
Joda-Time:如有质量问题包退包换的Java日期和时间类。
14、数据库
Hibernate、EclipseLink、JPA
JDO
jOOQ
SpringJDBC、Spring Data
Apache DbUtils
15、开发工具
Lambok: 旨在减少代码编写的Java开发库。
分享到:
相关推荐
Java自动生成entity、dao、service、controller代码
4.1.2 Java I/O库 72 4.2 练习 74 4.2.1 数据传送的通道 74 4.2.2 管道的一端 76 4.2.3 文件处理 78 4.2.4 基于对象的读写 80 4.2.5 NIO 85 4.3 小结 89 第5章 如何走得更稳——测试驱动的基本概念 91 5.1 ...
Caffeine是基于Java 8的,缓存库。有关更多详细信息,请参见我们的并浏览以获取最新版本。 快取 咖啡因使用受Google Guava启发的API提供内存中缓存。 这些改进基于我们设计和经验。 LoadingCache< Key> graphs = ...
...账户一览 2....商品管理模块:1.商品一览 2.商品查询 3....库存管理模块,1....此项目只涉及JavaSE部分,涉及到的只是Java数组、接口等知识,不涉及集合(但是后续会更新),不涉及数据库,不涉及数据库,不涉及数据库
4.1.2 Java I/O库 72 4.2 练习 74 4.2.1 数据传送的通道 74 4.2.2 管道的一端 76 4.2.3 文件处理 78 4.2.4 基于对象的读写 80 4.2.5 NIO 85 4.3 小结 89 第5章 如何走得更稳——测试驱动的基本概念 91 5.1 ...
4.1.2 Java I/O库 72 4.2 练习 74 4.2.1 数据传送的通道 74 4.2.2 管道的一端 76 4.2.3 文件处理 78 4.2.4 基于对象的读写 80 4.2.5 NIO 85 4.3 小结 89 第5章 如何走得更稳——测试驱动的基本概念 91 5.1 ...
以下这些情况都可以引发异常:您的代码或调用的代码(如共享库)中有错误,操作系统资源不可用,公共语言运行库遇到意外情况(如无法验证代码),等等<BR><BR>《Exception Handling for C++》关于异常处理论文,向...
Java进阶课程 Java进阶课程2天 测试驱动开发(TDD) 作坊 清洁代码研讨会 SOLID原理作坊 Spring启动测试 控制者 服务 资料库 网关 车间一览 参考文献
docsify,感觉逼格很高,阅读体验也不错,于是本库启用了 docsify;目录更新随意,考虑 Actions 中 欢迎预览: :bell: 还有一部分内容在 里哦~ 记录一些杂七杂八的东西,主要文件夹为: :high_voltage: 记录下我进坑...
《Linux多线程服务端编程:使用muduo C++网络库》主要讲述采用现代C++在x86-64 Linux上编写多线程TCP网络服务程序的主流常规技术,重点讲解一种适应性较强的多线程服务器的编程模型,即one loop per thread。...
EasyUI自带的Icon图标太少,而且不是很美观,所以整理扩展了一下自定义图标包,前端大神必备神器,导入即用,无需更改!
SmallAccount小小记账本,拥有基础记账功能,是一个JAVA (J2SE) 练手+自用的小项目。实现了基础记账功能 记账分类的增改删查 记账记录的增改删查 月度一览和月度每日统计(柱状图) 配置信息的修改与保存 (每月预算...
2.3 OpenGL实用库 13 2.3.1 生成纹理操作所需的图形 13 2.3.2 坐标转换 13 2.3.3 多边形的镶嵌分块 14 2.3.4 绘制球体、圆柱和圆盘 14 2.3.5 NURBS曲线和曲面 14 2.3.6 错误处理 15 2.4 对X窗口系统的OpenGL扩展 15 ...
java原始源码 了不起的天秤座 精选的令人敬畏的天秤座资源列表 内容一览 文档 - 欢迎来到 Libra 开发者网站。 - Libra中国的中文官方开发文档 开源钱包 - POC Libra 钱包。 - 钱包前端,没有后端。 – POC 命令行...
伊蒙娜祖祖zuzu的MobilePhone2chBrowser iMona [Java] [CLDC] [MIDP]关于此存储库这是iMona @ zuzu的源代码,这是我在学生时就开发的2ch专用车库浏览器。原始iMona中已添加了各种功能。关于iMona @ zuzuiMona的修改...
获取數据库表的前N条记录 几段SQL Server语句和存储过程 生成表中的数据的脚本 最详细的SQL注入相关的命令整理 Oracle Oracle中PL/SQL单行函数和组函数详解 mssql+oracle Oracle编程的编码规范及命名规则 Oracle...
后台后台的话主要要也是自己用Java写的 ,目前开源了大部分吧,只有一部分关于爬虫的暂时还没有开源,主要是太乱了,后面整理整理加进去。预览图进度2021.03.20( version: 1.3.0 ):修改播放器和界面优化等2020.06...
java实现校园一卡通源码 清华课程小助手 一款真正懂清华学生的android课程管理APP 国内CDN高速下载链接 此链接会始终保持为最新版本(即Github代码库的最近一次Release的版本)。如您有需要获取老版本,请到Github...
单位房产管理系统java源码现代网络开发选择 在使用现代 Web 技术重写企业应用程序时需要考虑的一些决策的科学工作。 由 Mikey Stengel 在理学学士 (B. Sc.) 考试过程中撰写 第二个项目论文 在考试过程中获得理学学士...