前言

翻译自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. 对TabControl的简单优化

    之前由于忙于赶项目进度而忽视了软件的用户体验,界面挺难看,有一天看见组长优化了某个窗体,让人感觉完全不一样,我也不甘示弱,要把我的程序做顺眼一点才行.我的程序是一个以TabControl为主要容器的窗 ...

  2. 【VBS】vbs指定编码保存文本文件(含xml、ini什么的)

    本文还是折腾安装包期间衍生出来的产物. 我那安装包在安装期间有这个动作: - 让用户填写一些信息,待安装完成后把这些信息写入软件安装目录中的指定ini.xml文件中 上文说的是如何用vbs写ini,i ...

  3. c#获取当前应用程序所在路径

    一.获取当前文件的路径1.   System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName     获取模块的完整路径,包括文 ...

  4. ASP.NET MVC 请求流程

    一.应用程序启动 1.Application_Start方法,程序启动 2.RegisterRoutes方法,注册路由 3.System.Web.Mvc.RouteCollectionExtensio ...

  5. C#编程总结(十二)断点续传

    C#编程总结(十二)断点续传 我们经常使用下载工具,如bit精灵.迅雷.FlashGet,这些软件都支持断点续传. 断点续传即下载任务暂停后可以继续,而无需重新下载,即下载时需要通知服务器的起始位置. ...

  6. ROW_NUMBER、RANK()、DENSE_RANK()和OVER的使用

    /*以FoodPrice列排序并显示排序后的行号*/ SELECT ROW_NUMBER() OVER(ORDER BY FoodPrice DESC) AS RowId,* FROM dbo.Foo ...

  7. hibernate----1-N--jointable(人与地址)

    package com.ij34.dao; import java.util.HashMap; import java.util.HashSet; import java.util.Set; impo ...

  8. Firemonkey Bitmap 设定像素颜色 Pixel

    VCL 和 Firemonkey 的 Bitmap 处理像素的方式不相同,下例为将图片内不是「白色」的像素全部改成「黑色」: procedure TForm1.Button1Click(Sender: ...

  9. springmvc(2)Controller源码简单解析

    前面简单的分析了一下DispatcherServlet,接下来分析一下Controller,在web的MVC中,Controller就是其中的C,启动的一些页面逻辑处理,页面映射的功能: 首先看看超类 ...

  10. 两个与spring事务相关的问题

    有些spring相关的知识点之前一直没有仔细研究:比如spring的事务,并不是没有使用,也曾经简单的在某些需要事务处理的方法上通过增加事务注解来实现事务功能,仅仅是跟随使用(甚至并未测试过事务的正确 ...