前言

翻译自programcreek

典型的Java项目通常会依赖一些第三方库,本文总结了一些最受欢迎的Java库,这些类库在各种应用程序中被广泛使用;

当然,Java SDK是最广泛使用的Java库,这个不用多说,本文的关注点是第三方库;

这份清单可能不是很完美,如果你觉得有些类库也应该被列举出来,那么请留下你的评论。

Core核心库

  • Apache Commons Lang - 这是Apache的一个库,提供了许多辅助工具,如字符串处理,对象创建等,是对java.lang API的补充;
  • Google Guava - 谷歌的核心类库,用于实现集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support]等;

HTML, XML解析

  • Jsoup - 可以非常方便的处理HTML内容;
  • STaX - 用于解析XML文档;

Web框架

  • Spring - Java平台下的一个开源框架和IOC容器;
  • Struts 2 - Apach中最受欢迎的web框架;
  • Google Web Toolkit - 来自Google的开源Java软件开发框架,用于构建和优化基于浏览器的复杂应用程序;
  • Strips - 一个表现层框架框架,使用最新Java技术构建Web程序;
  • Tapestry - 面向组件的框架,用于创建动态、健壮、扩展性高的Web应用程序。

图标,报表,图形

  • JFreeChart -用于创建条形图,曲线图,饼图等;
  • JFreeReport -创建PDF报表;
  • JGraphT - 创建图形,包含由边连接的点集;

窗口库

  • Swing - JDK中的图形界面库;
  • SWT - 来自Eclipse的图形界面库;

GUI框架

  • Eclipse RCP - 提供了标准化的组件模型,包括菜单,工具栏等;

自然语言处理

  • OpenNLP - Apache提供的自然语言处理库;
  • Stanford Parser - 斯坦福大学提供的自然语言处理库;

静态分析

  • Eclipse JDT - 来自IBM的库,可以操纵Java源代码;
  • WALA - 可以处理Jar文件的库;

JSON

  • Jackson - 一个多用途的Java库,用于处理JSON格式数据。
  • XStream - 一个简单的库,用于将java对象序列化为XML并支持反序列化;
  • Google Gson - 可将Java对象转成json字符串,也可以将json字符串转成java对象;
  • JSON-lib - 用于 beans、maps、collections、java arrays、XML 和 JSON 之间相互转换;

数学

  • Apache Commons Math - 提供一些数学和统计相关的函数。

日志

  • Apache Log4j - 最受欢迎的日志库;
  • Logback - Log4j的继承者;
  • SLF4J(The Simple Logging Facade for Java) - 各种日志框架的一个简单的外观或抽象(如java.util.logging 、logback、log4j等),允许用户在部署时加入需要的日志框架。

Office相关

  • Apache POI - 使用纯Java操作各种基于微软OLE2合成文档格式的文档。
  • Docx4j - 一个Java库,用于创建、操作微软公开的XML文件(支持Word docx、 Powerpoint pptx和Excel xlsx)。

日期和时间

  • Joda-Time - 高质量的日期和时间处理类库;

数据库

  • Hibernate / EclipseLink / JPA
  • JDO
  • jOOQ
  • SpringJDBC / Spring Data
  • Apache DbUtils

开发工具

  • Lombok - 一个用于简化java代码编写的库;

译文链接:http://www.programcreek.com/2011/08/the-most-widely-used-java-apis/

最受欢迎的Java第三方库的更多相关文章

  1. java 第三方库

    转载自http://www.cnblogs.com/lucus-jia/p/3483511.html java 第三方库   总结一下常用的java第三方库,方便查询和使用,欢迎补充. 1.核心库 A ...

  2. JAVA程序员一定知道的优秀第三方库(2016版)

    几乎每个程序员都知道要“避免重复发明轮子”的道理——尽可能使用那些优秀的第三方框架或库,但当真正进入开发时,我却经常发现他们有时并不知道那些轮子在哪里.最近,我在业余时间带几个年轻的程序员一起做了一个 ...

  3. [转]JAVA程序员一定知道的优秀第三方库(2016版)

    原文地址:http://blog.csdn.net/zxc123e/article/details/51418163 几乎每个程序员都知道要“避免重复发明轮子”的道理——尽可能使用那些优秀的第三方框架 ...

  4. GitHub上那些值得一试的JAVA开源库--转

    原文地址:http://www.jianshu.com/p/ad40e6dd3789 作为一名程序员,你几乎每天都会使用到GitHub上的那些著名Java第三方库,比如Apache Commons,S ...

  5. GitHub上那些值得一试的JAVA开源库

    作为一名程序员,你几乎每天都会使用到GitHub上的那些著名Java第三方库,比如Apache Commons,Spring,Hibernate等等.除了这些,你可能还会fork或Star一些其他的开 ...

  6. Java第三方工具库/包汇总

    一.科学计算或矩阵运算库 科学计算包: JMathLib是一个用于计算复杂数学表达式并能够图形化显示计算结果的Java开源类库.它是Matlab.Octave.FreeMat.Scilab的一个克隆, ...

  7. 使用java以及jdbc不使用第三方库执行sql文件脚本

    使用java以及jdbc不使用第三方库执行sql文件脚本 2017年02月15日 15:51:45 阅读数:660 使用java执行sql脚本的方法 解析sql脚本,删除不必要的注释和空行 将语句按分 ...

  8. 一个千万量级的APP使用的一些第三方库

    转载:http://www.jianshu.com/p/dc8c05cf693d .背景 前段时间在调研第三方推送服务的时候,反编译了一部分市面上比较流行的APP.其中一个无论是在设计还是功能上都堪称 ...

  9. 常用iOS第三方库以及XCode插件介绍

    第三方库 CocoaPod CocoaPod并不是iOS上的第三方库 而是大名鼎鼎的第三方库的管理工具 在CocoaPod没有出现之前 第三方库的管理是非常痛苦的 尤其是一些大型的库(比如nimbus ...

随机推荐

  1. sql 内连接和外链接

    如表     -------------------------------------------------     table1 | table2 |     ----------------- ...

  2. sQLserver T-SQL 事务的用法

    原文在: https://www.lesg.cn/netdaima/2016-55.html 在使用Mssql的时候经常需要用到存储过程 有些操作在前面发生错误的时候:需要回滚:这就需要事务了: 下面 ...

  3. 介绍开源的.net通信框架NetworkComms框架 源码分析(九) IPConnection

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  4. comparator接口与Comparable接口的区别

    1. Comparator 和 Comparable 相同的地方 他们都是java的一个接口, 并且是用来对自定义的class比较大小的, 什么是自定义class: 如 public class Pe ...

  5. PHP内核探索之变量(6)- 后续内核探索系列大纲备忘

    年前因为工作比较饱和,现在又忙着换工作的事情,基本停止了对博文的更新.后续的博文,还是慢慢补上吧. 为了不至于过于发散,先搞个未成形的大纲,如下: PHP内核探索之变量  不平凡的字符串 PHP内核探 ...

  6. linux使用rpm重装jdk

    1.卸载jdk #rpm -qa | grep gcj 如果输出没有内容,说明没有jdk,如果输出有内容,要把搜索到的文件卸载掉,命令为: #rpm -e --nodeps [上步操作输出的文件] 然 ...

  7. wpf框架模型分析

    一.MVVM模式介绍: 在网上看过很多的MVVM中各块的介绍,感觉很混乱.找到如下的描述感觉很合理,也很好理解(https://msdn.microsoft.com/en-us/library/gg4 ...

  8. Lua-泛型for循环 pairs和ipairs的区别

    先看一段简单的代码: local mytable = { , , aa = "abc", subtable = {}, , } --for循环1 print("for - ...

  9. 【javascript激增的思考04】MVC与Backbone.js(beta)

    前言 最近整理了很多前端面试题的东西,今天又去参加了一次面试,不知各位烦不烦,我反正有点累了,于是我们今天继续回到我们前段时间研究的问题,我们再来看看MVC吧. 什么是MVC 又回到这个问题了,到底什 ...

  10. oracle表的管理

    表名和列的命名规则 必须以字母开头: 长度不能超过30字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z,a-z,0-9,$,#等:   数据类型: 字符型: char       定长 ...