前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >20个常用的Java开发类库和API

20个常用的Java开发类库和API

作者头像
用户7353950
发布2022-06-23 15:04:20
6730
发布2022-06-23 15:04:20
举报
文章被收录于专栏:IT技术订阅

Java开发中有20个常用的类库和API?为什麽要学习常用的类库和API?Java作为一种应用已有十几年历史的Java语言,但是在这条职业发展之路上,仍然有很多java开发工程师每天都在苦干!尽管辛苦,但始终创造不了多少价值。而且,“看起来很轻松”java开发人员擅长于利用现有的API进行开发,而非重复地进行制造。在这篇文章中,结合了在线,java开发者应该非常熟悉的一些常用库API,包括日志、JSON解析、单测、XML解析、字节码处理、数据库连接池、集合类、邮件、加密、嵌入SQL数据库、JDBC故障诊断和20个常用类库,如序列化。这在日常开发中经常被使用。推荐收藏!!!

20个常用的Java开发类库和API。

  一、日志相关。

  printlog是服务器端应用的首要任务,因为日志是您了解程序运行状况的唯一方法。虽然JDK有自己的日志库,但还有许多更好的选项,比如Log4j、SLF4j和LogBack。

  日志相关

  JSON解析库。

  如今,JSON已取代XML成为Web服务和物联网(IoT),成为客户端与服务器之间传递信息的首选协议。但JDK并不提供JSON库。但是,还有很多出色的第三方库可以用于解析和创建JSON消息,比如Jackson和Gson。

  JSON分析库。

  第三,单元测试库。

  使用单元测试技术,是区分普通开发人员和优秀开发人员的重要标志。编程人员通常没有编写单元测试的理由,但是最普遍的理由是缺少经验和知识。常用的单测帧是JUnit、Mockito和PowerMock。

  单元测试库

  四,通用类库。

  Java开发者可以使用一些优秀的第三方通用库,比如ApacheCommons和GoogleGuava。由于这些通用类库已经通过了无数个开发人员实践,无论从实用性还是性能上来说,都是最好的。

  通用类库

  五,Http图书馆。

  JDK缺少HTTP支持。尽管有可能使用java.netbundle类,但这与直接使用诸如ApacheHttpClient和HttpCore之类的开源类库相比,麻烦太大。

  Http库

  6,XML解析库。

  市场上已经出现了大量XML解析的类库,比如Xerces,JAXB,JAXP,Dom4j,Xstream等等。Xerces2是新一代高性能、完全兼容的XML解析工具。Xerces2定义了XercesNativeinterface(XNI)规范,并提供了一个完全兼容的标准XNI规范实现。这个分析器完全被重新设计和实现,并且更加简单。

  XML分析库。

  七、Excel读写库。

  很多应用程序都需要提供向Excel导出数据的能力,如果您想开发同一个Java应用,则需要使用ApachePOIAPI。在Java程序中可以读取和写入XLS文件,这是一个非常丰富的类库。

  Excel读写库。

  八,bycode库。

  当您在写一个框架或类库时。您可以选择诸如javassist和CglibNodep这样的常用字节码库,它们允许您读取并修改应用程序生成的字节码。Javassist使JAVA字节码操作变得非常简单。这是一个用来编辑Java字节码的类库。ASM是另一种非常有用的字节码。bycode库

  九、数据库连接池。

  如果您的Java应用程序没有使用数据库连接池库来与数据库进行交互,那么您的错误将非常严重。由于在运行时创建数据库连接很费时,而且会使程序拖慢。因此,强烈推荐使用一些可用的连接池,比如CommonsPool和DBCP。对于web应用,web服务器通常会提供这些功能。但您需要将java项目中的数据库连接池类库导入应用。

  资料库连接资料库

  十,信息传递库。

  与日志和数据库连接池类似,消息传递在许多实际Java项目中也是必不可少的。Java提供JMSJava消息服务,但是这并不属于JDK,您需要单独介绍jms.jar。同样,TibcoRV也是一个很好的选择,如果您准备使用第三方消息传输协议。

  消息传递库

  十一、PDF处理图书馆。

  除Excel和Word外,PDF还是一种常见的文件格式。如果您的应用程序支持PDF格式的文件处理,您可以使用iText和ApacheFOP类库。这两种产品都提供了非常有用的PDF处理能力。

  PDF处理库。

  日期与时序12。

  JDK的日期和时间库在Java之前就遭到了很多问题,例如它的非线程安全、不可更改、易出错等等。许多开发者都喜欢使用JodaTime类库。

  但在java8发布后,我们将完全放弃JodaTime,因为Java8提供了所有的功能。然而,如果您的代码是在低端版本的JDK上运行,那么JodaTime仍然值得使用。

  十三,收集类库。

  尽管JDK拥有丰富的集合类,但是仍然有许多第三方类库能够提供更好的功能。例如ApacheCommonsCollections、GoldmanSachsSachs、GoogleCollections和Trove等。Trove特别有用处,因为它为所有标准Collections类提供了更快的版本,并且可以直接使用原始语言(primitive)(如Map中的一个int键或值等)进行操作。

  FastUtil是另一种相似的API,其继承了JavaCollectionFramework,提供了多种特定类型的容器,包括map映射、setset、list、prorityqueue)、为java.util包实现了一个标准接口(也提供了一个标准类没有的双向迭代器),此外,还有大量(64位)的array、set、list,以及快速实用型二进制或文本文件I/O操作类。

  十四,邮件API。

  javax.mail和ApacheCommonsEmail提供了api来发送邮件。他们以JavaMailAPI为基础,提供简化使用。

  邮件API

  15,HTML解析库。

  与XML类似于JSON,HTML是我们可能需要处理的另一种传输格式。谢天谢地,我们提供了jsoup来极大地简化了使用HTML的Java应用程序。不仅仅是用JSoup来解析HTML,也可以创建一个HTML文档。

  HTML分析库。

  16,加密的图书馆。

  ApacheCommons家族中的CommonsCodec提供一些通用的编码解码实现,如Base64、Hex、MD5、PhoneticandURLs等。

  加密库

  嵌入式SQL数据库库。

  很喜欢H2这类可嵌入到Java应用程序中的内存数据库。当您进行单点测试时,如果您需要一个用于验证您的SQL的数据库,您将会非常满意。另外,H2不仅是唯一的嵌入式DB,您还可以选择ApacheDerby和HSQL。

  内嵌SQL数据库。

  JDBC的故障诊断库。

  拥有优秀的JDBC扩展库,可以轻松地进行调试,比如P6spy就是其中之一。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT技术订阅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档