1 Lombok 是一个 java 类库,它利用注解方式自动生成 java bean 中 getter、setter、equals 等方法,还能自动生成 logger、toString、hashCode、builder 等 日志相关变量、Object 类方法或设计模式相关的方法,能够让你的 代码更简洁,更美观。
Lombok项目是一个java库,它可以自动插入到编辑器和构建工具中,增强java的性能。不需要再写getter、setter或equals方法,只要有一个注解,就有一个功能齐全的构建器、自动记录变量等等
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
<scope>provided</scope>
</dependency>
2 druid是用于创建和管理连接,利用“池”的方式复用连接减少资源开销,和其他数据源一样,也具有连接数控制、连接可靠性测试、连接泄露控制、缓存语句等功能,另外,druid还扩展了监控统计、防御SQL注入等功能。
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.16</version>
</dependency>
3 Dubbo作为一款优秀的RPC框架,在国内有着众多的使用者,自从2018年2月,Dubbo被阿里捐献给Apache基金会以后,Dubbo似乎以全新的名称 Apache Dubbo焕发了新的生命力。虽然有着同样优秀和优势的Spring Clould框架,但是Dubbo能焕发新生也是一件好事,期待着Dubbo能够完善机制,更新迭代出的更好。
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>3.0.7</version>
</dependency>
4 Apache Kudu 是一个针对 Apache Hadoop 平台而开发的列式数据存储(Columnar Data Store)管理器。
Apache Kudu是由Cloudera开源的存储引擎,可以同时提供低延迟的随机读写和高效的数据分析能力。Kudu支持水平扩展,使用Raft协议进行一致性保证,并且与Cloudera Impala和Apache Spark等当前流行的大数据查询和分析工具结合紧密。
<dependency>
<groupId>org.apache.kudu</groupId>
<artifactId>kudu-client</artifactId>
<version>1.13.0</version>
</dependency>
5 Hive-jdbc驱动程序
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>2.1.1-cdh6.3.2</version>
<exclusions>
<exclusion>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-runner</artifactId>
</exclusion>
</exclusions>
</dependency>
6 Impala 是 Cloudera 公司主导开发的新型查询系统,它提供 SQL 语义,能查询存储在 Hadoop 的 HDFS 和 HBase 中的 PB 级大数据
<dependency>
<groupId>Impala</groupId>
<artifactId>ImpalaJDBC42NoLog4j</artifactId>
<version>2.6.24.1029</version>
</dependency>
7 cat 引入这个以后cat项目就能监控到你访问的url
CAT(Central Application Tracking)是基于Java开发的实时应用监控平台,包括实时应用监控,业务监控。关于CAT的具体介绍可移步到CAT官网进行查阅。
<!-- 点评cat-->
<dependency>
<groupId>com.dianping.cat</groupId>
<artifactId>cat-client</artifactId>
<version>3.0.0</version>
</dependency>
8Joda-Time 是Joda提供的一个遵循Apache2.0 开源协议的 JDK以外的优质日期和时间开发库。
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.10.5</version>
</dependency>
为什么使用Joda-Time
使用方便:Calendar 访问“正常的”日期困难,并且缺乏简单的防腐,Joda-Time 拥有简单的字段访问,比如获得年的 getYear() 和 获得星期 中的天 getDayOfWeek() 。
易于扩展:JDK支持通过使用子类实现多个日历系统,但是这是非常笨重的,并且在实现中很难先出另一个日历系统。Joda-Time 支持基于 Chronology 类实现多个可插拔的日历系统。
功能全面:Joda-Time 提供了所有的日期和时间计算的必须功能,它提供了既装即用的特性。
最新的时区计算:时区的实现基于公共时区信息数据库,每年更新数次。新版本的Joda-Time 包括了这个数据库的所有更改,应尽早进行必要的更新,手动更新区域数据很容易。
日历支持:提供了8中日历系统。
互通性:内部使用毫秒进行标识,这与JDK或者其他公共的时间表示相一致。
性能良好:支持针对所有访问的域进行最小的计算。
良好的测试覆盖率:有全方位的测试人员保证库的质量、
具有完整文档:有一个完整的用户指南,改指南提供了一个概述,涵盖常见的使用场景。javadoc 非常详细,涵盖API的其余部分。
发展:自2002年以来积极发展,是一个成熟的可靠的代码库,一些相关的项目目前也是可用的。
开源:遵循Apache 2.0开源协议发布。
2.1.2 Joda-Time 的关键优点
LocalDate:只包含日期
LocalTime:只包含时间
Instant:时间轴上的时间点
DateTime:时区中完整的日期和时间
DateTimeZone:更好的时区
Duration和Period:持续时间
Interval:两个时间点之间的时间
全面并且灵活的时间格式化与转换
8 解析XML文件前面我们说过映射文件是XML格式,数据库配置文件也可以是XML格式,因此如果能解析XML文件我们就可以获取这两个文件的信息
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<version>1.4.01</version>
</dependency>
9 org.jasig.cas.client
CAS单点登录技术
<!--cas -->
<dependency>
<groupId>org.jasig.cas.client</groupId>
<artifactId>cas-client-support-distributed-ehcache</artifactId>
<version>3.3.3</version>
<exclusions>
<exclusion>
<groupId>xalan</groupId>
<artifactId>serializer</artifactId>
</exclusion>
</exclusions>
</dependency>
10 json-lib,算是很早的转换工具了,用的人很多,说实在现在完全不适合了,缺点比较多,依赖的第三方实在是比较多,效率低下,API也比较繁琐,说他纯粹是因为以前的老项目很多人都用到它
jackson一直很主流,社区和文档支持也很充足,但有人还是嫌它不够快,不够简洁,于是便有了fastjson,看名字就知道它的主要特点就是快,可能在功能和其他支持方面不能和jackson媲美,但天下武功,唯快不破,这就决定了fastjson有了一定的市场
dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>xom</groupId>
<artifactId>xom</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.7.1</version>
</dependency>
11 commons-lang3
commons-lang3是Apache的Jakarta commons工程下具有一系列公共基础类。
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
12 Spring Retry 是Spring框架中的一个组件, 它提供了自动重新调用失败操作的能力。这在错误可能是暂时发生的(如瞬时网络故障)的情况下很有帮助。
<dependency>
<groupId>org.springframework.retry</groupId>
<artifactId>spring-retry</artifactId>
</dependency>
13 Apache POI 简介是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office(Excel、WORD、PowerPoint、Visio等)格式档案读和写的功能。POI为“Poor Obfuscation Implementation”的首字母缩写,意为“可怜的模糊实现”。
Apache POI常用的类
HSSF - 提供读写Microsoft Excel XLS格式档案的功能。
XSSF - 提供读写Microsoft Excel OOXML XLSX格式档案的功能。
HWPF - 提供读写Microsoft Word DOC97格式档案的功能。
XWPF - 提供读写Microsoft Word DOC2003格式档案的功能。
HSLF - 提供读写Microsoft PowerPoint格式档案的功能。
HDGF - 提供读Microsoft Visio格式档案的功能。
HPBF - 提供读Microsoft Publisher格式档案的功能。
HSMF - 提供读Microsoft Outlook格式档案的功能。
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.0.0</version>
</dependency>
<dependency>
14 knife4j
Knife4j【快速开始】是为Java MVC框架集成Swagger生成API文档的增强解决方案(在非Java项目中也提供了前端UI的增强解决方案),前身是Swagger2,取名Knife4j是希望她能像一把匕首一样小巧、轻量,并且功能强悍。
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.3</version>
</dependency>
15 guava工具类 就是封装平常用的方法,不需要你重复造轮子,节省开发人员时间,提高工作效率。谷歌作为大公司,当然会从日常的工作中提取中很多高效率的方法出来。所以就诞生了guava。guava遵循高效的java语法实践,可以使程序员节约时间,提高生产力
guava的核心库
集合 [collections]
缓存 [caching]
原生类型支持 [primitives support]
并发库 [concurrency libraries]
通用注解 [common annotations]
字符串处理 [string processing]
I/O 等等。
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.1.1-jre</version>
</dependency>
17 org.glassfish 参数校验 Java约束验证
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.el</artifactId>
<version>3.0.1-b11</version>
</dependency>
18 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.3.0</version>
</dependency>
19 EasyExcel能很快速的读取写入超大Excel文件
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.0.5</version>
</dependency>
20 Janino 是一个极小、极快的 开源Java 编译器(Janino is a super-small, super-fast Java™ compiler.)。Janino 不仅可以像 JAVAC 一样将 Java 源码文件编译为字节码文件,还可以编译内存中的 Java 表达式、块、类和源码文件,加载字节码并在 JVM 中直接执行。Janino 同样可以用于静态代码分析和代码操作。
<!-- logback文件中使用if判断需要 -->
<dependency>
<groupId>org.codehaus.janino</groupId>
<artifactId>janino</artifactId>
<version>3.0.7</version>
</dependency>
21
Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
Hutool中的工具方法来自于每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;
Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。
1.2 由来
Hutool = Hu + tool,是原公司项目底层代码剥离后的开源库,“Hu”是公司名称的表示,tool表示工具。Hutool谐音“糊涂”,一方面简洁易懂,一方面寓意“难得糊涂”。
cn.hutool工具库----强大的工具库
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.15</version>
</dependency>
22 mapstruct是用来快速处理entity对象的属性复制的
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.5.0.Beta2</version>
</dependency>
23 Quartz的使用部署定时任务
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.3</version>
</dependency>
24 AWS S3的Java代码实现
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-s3</artifactId>
<version>1.12.296</version>
</dependency>文章来源:https://www.toymoban.com/news/detail-694963.html
25ANTLR4是一款优秀的开源语法解析器
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4</artifactId>
<version>4.12.0</version>
</dependency>文章来源地址https://www.toymoban.com/news/detail-694963.html
到了这里,关于java 常用 jar 包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!