那些厉害的 Javaer 都在用什么?

2024-05-01 02:12
文章标签 java 厉害 er

本文主要是介绍那些厉害的 Javaer 都在用什么?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

优秀且经验丰富的Java开发人员的特征之一是对API的广泛了解,包括JDK和第三方库。 我花了很多时间来学习API,尤其是在阅读了Effective Java 3rd Edition之后 ,Joshua Bloch建议在Java 3rd Edition中使用现有的API进行开发,而不是为常见的东西编写新的代码。

这对我来说很有意义,因为这些第二方库都经过了测试。 在本文中,我将分享Java开发人员应该熟悉的一些最有用和最基本的库和API。 顺便说一句,我没有包括Spring和Hibernate这样的框架,因为它们是众所周知的并且具有特定的功能。

这是我收集的一些有用的第三方库,Java开发人员可以在其应用程序中使用它们来完成许多有用的任务。 为了使用这些库,Java开发人员也应该熟悉这些,这是本文的重点。 如果您有想法,可以研究该库并加以使用。

1、PDF库

与Microsoft Excel和World相似,PDF是另一种普遍存在的格式。 如果您需要在应用程序中支持PDF功能,例如将数据导出为PDF文件,则可以使用iText和Apache FOP库。 两者都提供有用的PDF相关功能,但是iText变得越来越丰富和完善,我一直偏爱那种。 请参阅此处以了解有关iText的更多信息。

2、日期和时间库

在Java 8之前,JDK的数据和时间库存在许多缺陷,例如它们不是线程安全的,不可变的,并且容易出错,许多Java开发人员都依靠JodaTime来实现其日期和时间要求。 从JDK 8开始,没有理由使用Joda,因为您可以在JDK 8的新Date and Time API本身中获得所有功能,但是如果您使用的是较旧的Java版本,则JodaTime是一个值得学习的库。

关注公众号:Java技术栈,回复:Java,可阅读我写的系列 Java 8+ 系列教程,也可以前往网站(https://www.javastack.cn)去阅读。

3、收藏库

尽管JDK具有丰富的集合库,但仍有一些第三方库提供了更多选项,例如Apache Commons集合,Goldman Sachs集合,Google集合和Trove。 Trove库特别有用,因为它为Java提供了高速的常规和原始集合。

FastUtil是另一个类似的API,它通过提供特定于类型的映射,集合,列表和优先级队列来扩展Java Collections Framework,而这些队列,内存,占用空间小并且可以快速访问和插入。 还为二进制文件和文本文件提供了大型(64位) arrays , sets和lists以及快速,实用的I / O类。

4、电子邮件API

javax.mail和Apache Commons Email –提供用于发送电子邮件的API。 它建立在旨在简化的JavaMail API之上。

5、JNPF

JNPF开发平台是一个基于SpringBoot+Vue3的全栈开发平台,采用微服务、前后端分离架构。前后端封装了上千个常用类,方便扩展;集成了代码生成器,支持前后端业务代码生成,满足快速开发;框架集成了表单、报表、图表、大屏等各种常用的Demo方便直接使用;后端框架支持Vue2、Vue3;平台即可私有化部署,也支持K8S部署。

应用地址:https://www.jnpfsoft.com

技术架构

1、数据库兼容:MySQL(默认)、SQLServer、Oracle、PostgreSQL、达数据库、人大金仓数据库

2、分布式文件存储:兼容 MinIO 及多个云对象存储,如阿里云 OSS、华为云 OBS、七牛云 Kodo、腾讯云 COS 等

3、后端基于IDEA + Eclipse +Spring Tool Suite 等开发。

4、前端基于Node.js+Vue + TypeScript +Vite+Pinia+Pnpm+ Element-ui等开发。

5、移动端开发 Node.js 开发

6、HTML解析库

与JSON和XML相似,HMTL是我们许多人必须处理的另一种常见格式。 值得庆幸的是,我们拥有jsoup,它大大简化了在Java应用程序中使用HTML的工作。 您可以使用JSoup不仅解析HTML,还可以创建HTML文档

它提供了使用DOM,CSS和类似jquery的最好方法提取和处理数据的非常方便的API。 jsoup实现WHATWG HTML5规范,并将HTML解析为与现代浏览器相同的DOM。

7、密码库

Apache Commons Codec软件包包含用于各种格式(例如Base64和Hexadecimal)的简单编码器和解码器。 除了这些广泛使用的编码器和解码器之外,编解码器包还维护了语音编码实用程序的集合。

8、JDBC故障排除库

有一些很好的JDBC扩展库可以使调试更加容易,例如P6spy。 它是一个库,可在不更改应用程序代码的情况下无缝地拦截和记录数据库数据。 您可以使用它们来记录SQL查询及其时间。 例如,如果您在代码中使用PreparedStatment和CallableStatement ,则这些库可以记录带有参数的确切调用以及执行所需的时间。

9、序列化库

Google协议缓冲区协议缓冲区是一种以有效但可扩展的格式对结构化数据进行编码的方法。 它是Java序列化的更丰富,更好的替代方法,我强烈建议有经验的Java开发人员学习Google Protobuf。

10、网络库

一些有用的网络库是Netty和Apache MINA。 如果您在编写需要执行低级网络任务的应用程序,请考虑使用这些库。

这就是每个Java开发人员都应该熟悉的一些有用的库 。

Java生态系统非常庞大,您会发现大量用于执行不同操作的库。 您考虑了一下,就会发现存在一个可以执行此操作的库。 与往常一样,Google是您找到有用的Java库的最佳朋友,但是您也可以查看Maven中央存储库,以找到一些适合您手头任务的有用库。

这篇关于那些厉害的 Javaer 都在用什么?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/950478

相关文章

Java堆转储文件之1.6G大文件处理完整指南

《Java堆转储文件之1.6G大文件处理完整指南》堆转储文件是优化、分析内存消耗的重要工具,:本文主要介绍Java堆转储文件之1.6G大文件处理的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言文件为什么这么大?如何处理这个文件?分析文件内容(推荐)删除文件(如果不需要)查看错误来源如何避

SpringBoot整合Dubbo+ZK注册失败的坑及解决

《SpringBoot整合Dubbo+ZK注册失败的坑及解决》使用Dubbo框架时,需在公共pom添加依赖,启动类加@EnableDubbo,实现类用@DubboService替代@Service,配... 目录1.先看下公共的pom(maven创建的pom工程)2.启动类上加@EnableDubbo3.实

SpringBoot整合(ES)ElasticSearch7.8实践

《SpringBoot整合(ES)ElasticSearch7.8实践》本文详细介绍了SpringBoot整合ElasticSearch7.8的教程,涵盖依赖添加、客户端初始化、索引创建与获取、批量插... 目录SpringBoot整合ElasticSearch7.8添加依赖初始化创建SpringBoot项

JAVA覆盖和重写的区别及说明

《JAVA覆盖和重写的区别及说明》非静态方法的覆盖即重写,具有多态性;静态方法无法被覆盖,但可被重写(仅通过类名调用),二者区别在于绑定时机与引用类型关联性... 目录Java覆盖和重写的区别经常听到两种话认真读完上面两份代码JAVA覆盖和重写的区别经常听到两种话1.覆盖=重写。2.静态方法可andro

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

Spring Boot中的路径变量示例详解

《SpringBoot中的路径变量示例详解》SpringBoot中PathVariable通过@PathVariable注解实现URL参数与方法参数绑定,支持多参数接收、类型转换、可选参数、默认值及... 目录一. 基本用法与参数映射1.路径定义2.参数绑定&nhttp://www.chinasem.cnbs

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

Spring StateMachine实现状态机使用示例详解

《SpringStateMachine实现状态机使用示例详解》本文介绍SpringStateMachine实现状态机的步骤,包括依赖导入、枚举定义、状态转移规则配置、上下文管理及服务调用示例,重点解... 目录什么是状态机使用示例什么是状态机状态机是计算机科学中的​​核心建模工具​​,用于描述对象在其生命