本文由 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是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和强大的库支持而闻名。这份“java知识一览,所有知识汇总”将涵盖Java的核心概念、语法、类库以及最佳实践,旨在提供一个全面的学习资源。 一、Java...
- **简介**:提供了免费的VGUI C++库和VIDE C++/Java集成开发环境,支持Windows和Linux平台,对于需要跨平台开发的Java开发者来说非常有价值。 ### 20. Kaffe.org - **网址**:http://www.kaffe.org/ - **简介**:...
- **简介**: Magnolia是一款基于Java的开源Web内容管理系统,遵循Java内容知识库标准(JSR-170)。 - **特点**: - 支持多种语言,包括英语和中文在内的14种语言。 - 集成了本地搜索功能,方便用户快速查找所需内容...
25. **.jar** - Java Archive,用于分发Java应用程序和库。 26. **.midi**、**.wav**、**.mp3**、**.wma** - 音频文件格式,MIDI是乐器数字接口,WAV是无损音频,MP3和WMA是压缩音频。 27. **.torrent** - ...
Swing是Java GUI(图形用户界面)库的一部分,主要用于创建桌面应用程序。Swing提供了一系列组件,使得开发者可以构建丰富的交互式用户界面。以下是一些主要的Swing组件及其常用构造方法: 1. **顶层容器**: - `...
《Java开发手册:一览众山小(泰山版)》是由阿里巴巴集团技术团队集体智慧和经验总结而成的手册,它不仅经历了内部大规模实战的检验,还在公开到业界后吸引了众多社区开发者的参与和完善。手册主要面向Java高级...
Java自动生成entity、dao、service、controller代码
Java I/O库中有两种主要类型的流:字节流和字符流。字节流处理8位的字节数据,适用于处理任何类型的数据,包括图像、音频等非文本格式。字符流处理16位的Unicode字符,主要用于处理文本数据。字节流有InputStream和...
26. **.jar**:Java Archive文件,包含Java类和资源,可以作为应用程序或库运行。 27. **.midi**:MIDI音乐文件,用于电子乐器的数字表示。 28. **.pdb**:数据库文件,如Visual Studio调试信息或SQLite数据库。 ...
.DLL是动态链接库,.INI是配置文件,.HTML和.CSS是网页设计文件,.JAVA是Java源代码,.PDF是便携式文档格式,.SQL是数据库查询脚本,.TXT是纯文本文件,.ZIP是压缩文件格式等等。 这些文件格式各有其特点和应用场景...
Caffeine是基于Java 8的,缓存库。有关更多详细信息,请参见我们的并浏览以获取最新版本。 快取 咖啡因使用受Google Guava启发的API提供内存中缓存。 这些改进基于我们设计和经验。 LoadingCache< Key> graphs = ...
...账户一览 2....商品管理模块:1.商品一览 2.商品查询 3....库存管理模块,1....此项目只涉及JavaSE部分,涉及到的只是Java数组、接口等知识,不涉及集合(但是后续会更新),不涉及数据库,不涉及数据库,不涉及数据库
安装JavaMail部分会指导开发者如何将JavaMail库添加到项目中,包括如何获取JavaMail的JAR文件,以及如何在构建路径或Maven/Gradle配置中包含这些依赖。此外,还可能涉及环境变量的设置,如系统属性`mail.smtp.host`...
**JSTL(JavaServer Pages Standard Tag Library)是Java服务器页面标准标签库,它提供了一系列预定义的标签,用于简化JSP开发,提高代码的可读性和可维护性。JSTL主要由五个核心标签库组成:Core、Format、XML、...
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 ...
【图书管理系统】是一个基于Java技术实现的信息管理应用,主要用于实现图书馆内部的图书信息化管理。该系统涵盖了书籍的分类管理、借阅与归还管理、信息查询以及操作员管理等多个核心功能,旨在提升图书管理的效率和...