前言

翻译自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. Win10怎么输入法切换

    按 windows 键+空格键,或者CTRL+Shift,或者只按 Shift,或者CTRL+空格 试试 方法/步骤1在桌面上点击[控制面板],进入控制面板后使用分类显示控制面板内的选项.然后在语言下 ...

  2. 词法分析程序 LEX和VC6整合使用的一个简单例子

    词法分析的理论知识不少,包括了正规式.正规文法.它们之间的转换以及确定的有穷自动机和不确定的有穷自动机等等... 要自己写一个词法分析器也不会很难,只要给出了最简的有穷自动机,就能很方便实现了,用if ...

  3. 理清那么多个OO(面向对象)

    OOA - Object-Oriented Analysis(面向对象分析) OOT - Object-Oriented Testing (面向对象测试) OOP - Object-Oriented ...

  4. ASP.NET MVC 网站开发总结(二)——一个或多个文件的异步或同步上传

    简而言之,直接用代码展示如何实现文件的上传,这里需要使用到一个bootstrap的文件上传插件File Input(请自行下载). 前台页面: <!----> <!DOCTYPE h ...

  5. 使用泛型元组替代out与ref形式传参

    我们在开发的时候,都会常常遇到一个问题,如何为逻辑上返回多个对象设计方法签名.通常我们会想到使用out或ref修饰参数,或者麻烦些自己设定一个类型内部包含多个Object类型属性来接收多个返回值.这两 ...

  6. 基于.Net Framework 4.0 Web API开发(2):ASP.NET Web APIs 参数传递方式详解

    概述:  ASP.NET Web API 的好用使用过的都知道,没有复杂的配置文件,一个简单的ApiController加上需要的Action就能工作.调用API过程中参数的传递是必须的,本节就来谈谈 ...

  7. InfluxDB学习之InfluxDB的基本概念

    InfluxDB与传统数据库在概念上有许多的不同,本文就给大家介绍下InfluxDB中的一些基本概念,更多InfluxDB详细教程请看:InfluxDB系列学习教程目录 InfluxDB技术交流群:5 ...

  8. [Cordova] 无法编译Visual Studio项目里Plugin副本的Native Code

    [Cordova] 无法编译Visual Studio项目里Plugin副本的Native Code 问题情景 开发Cordova Plugin的时候,开发的流程应该是: 建立Cordova Plug ...

  9. 国际化支持(I18N)

    本章译者:@nixil 使用国际化支持(I18N)能够使你的应用根据用户所在地区的不同选择不同的语言.下面介绍如何在引用中使用国际化. 只允许使用UTF-8 Play只支持UTF-8一种字符编码.这是 ...

  10. 控制器层(Controllers)

    本章译者:@freewind 业务逻辑代码通常位于模型(model)层.客户端(比如浏览器)无法直接调用其中的代码,所以模型对象提供的功能,必须作为资源以URI方式暴露给外部. 客户端使用HTTP协议 ...