Java常用工具+类库合集
1 常用工具
JVisual vm
:可以直接通过软件包下载,支持本地以及远程JVM
监控JMH
:Java Microbenchmark Harness
,测试基准组件,精度可达纳秒级JITWatch
:JIT
日志分析GUI
工具
2 日志库
2.1 日志框架
JUL
:JDK
自带日志库,也就是java.util.logging
Log4j
/Log4j2
:Apache
的一个开源项目,高度可配置Logback
:开源日志组件
2.2 日志门面
JCL
:Jakarta Commons Logging
,Apache
的一个开源项目slf4j
:Simple Logging Facade for Java
,常用的一个日志门面
3 JSON
库
Jackson
:Spring
默认JSON
库,使用广泛Gson
:Google
开发的功能最全的JSON
库,无额外依赖FastJson
:阿里出品的JSON
库,速度最快,但是在某些复杂类转换上可能会出现问题JSONP
:Oracle
出品的JSON
处理库
4 单元测试库
JUnit
:一个强大的单元测试库,基本上被所有主流IDE
支持Selenium
:UI
测试工具TestNG
:流行的单元测试框架Mockito
:Mock
框架之一,具有简单的API
、优秀的文档以及大量示例Cucumber
:一款自动化集成测试工具DBUnit
:数据库单元测试工具
5 通用类库
Apache Commons
:Apache
开源的一款强大工具包,包括编解码算法、集合扩展、IO
库、压缩库等Google Guava
:Google
开源的一个被Google Java
项目广泛依赖的核心库,包括一些基本工具、集合扩展、缓存、并发工具包、字符串处理等
6 HTTP
库
HttpClient
:Apache HttpComponents HttpClient
,一款特性丰富的HTTP
库okhttp
:一个高效的HTTP
库,使用连接池减少请求延迟,gzip
压缩减少响应数据大小,缓存响应内容Retrofit
:一款类型安全的HTTP
库
7 XML
解析库
Xerces
:Apache
开源的解析库JAXB
:一项根据XML Schema
生成Java
类的技术Dom4j
:一款灵活开源的XML
框架XStream
:一款XML
序列化库
8 Excel
读写库
Apache POI
:提供API
对Microsoft Office
系列的产品的读写功能,包括Word、Excel、PowerPoint、Visio
等
9 字节码库
BCEL
:Byte Code Engineering Library
,Apache
开发的字节码操作框架ASM
:一个轻量级的字节码操作框架CGLIB
:一个强大、高性能、高质量的生成类库Javassist
:一个开源的分析、编辑和创建Java
字节码的类库ReflactASM
:通过代码生成来提供高性能的反射处理库,访问类使用字节码操作而不是反射技术
10 数据库连接池库
HikariCP
:高性能数据库连接池Druid
:阿里开源的一款数据库连接池库,提供了强大的监控和扩展功能,可用于大数据实时查询和分析DBCP2
:Apache
开发的一款数据库连接池项目
11 PDF
库
Apache PDF Box
:Apache
开源的PDF
库iText
:能够快速产生PDF
文件的PDF
库
12 日期时间库
JDK8
自带的LocalDate
等JodaTime
:一款专门处理日期时间的库
13 集合类库
Apache Commons Collections
:Apache Commons
组件之一,提供一些常用集合的实现以及API
封装Google Collections
:Google
开发的一款强大的集合库HPPC
:High Performance Primitive Collections
,一款专注高性能和高存储效率优化的集合类库Trove
:GNU Trove
,一款快速轻量级的集合框架FastUtil
:一款Java
集合框架
14 加密库
Apache Commons Codec
:编解码以及加密处理库BouncyCastle
:提供了很多哈希算法和加密算法的第三方库
15 HTML
解析库
jsoup
:Java HTML
解析器,能够从URL
、文件或字符串解析HTML
16 邮件库
Simple Java Mail
:一款使用强大且简洁API
的邮件库Apache Commons Mail
:建立在Java Mail API
之上的邮件库
17 序列化库
MessagePack
:一种二进制序列化格式,比JSON
更为紧凑,编码更精简高效Protobuf
:Google
提供的多语言支持二进制序列化库Apache Avro
:Hadoop
的一个子项目,支持二进制序列化方式kryo
:快速高效的二进制序列化框架
18 缓存库
Caffeine
:高性能缓存工具,支持基于大小、基于时间、基于引用三种淘汰策略,同时拥有着高命中率的特点
19 其他库
Selma
:映射工具库,最常用的操作是用来复制对象Beetl
:一款高性能、多功能的模板处理引擎
Java常用工具+类库合集的更多相关文章
- 【Java基础】Java开发过程中的常用工具类库
目录 Java开发过程中的常用工具类库 1. Apache Commons类库 2. Guava类库 3. Spring中的常用工具类 4. 其他工具 参考 Java开发过程中的常用工具类库 1. A ...
- Java程序员常用工具类库
有人说当你开始学习Java的时候,你就走上了一条不归路,在Java世界里,包罗万象,从J2SE,J2ME,J2EE三大平台,到J2EE中的13中核心技术,再到Java世界中万紫千红的Framework ...
- Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库 java常用图像处理类库
Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库 java常用图像处理类库1.1. 5种常用的Photoshop滤镜,分别针对照片的曝光.风格色调.黑白照片处理.锐利度.降噪这五大 ...
- (转)超全整理!Linux性能分析工具汇总合集
超全整理!Linux性能分析工具汇总合集 原文:http://rdc.hundsun.com/portal/article/731.html 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望, ...
- Java面试题资料合集
Java面试题资料合集 2021年最新版--Java+最常见的+200++面试题汇总+答案总结汇总.pdf BIO,NIO,AIO,Netty面试题 35道.pdf Dubbo面试题 47道.pdf ...
- Flutter 常用工具类库common_utils
地址:https://pub.flutter-io.cn/packages/common_utils#-readme-tab- Dart常用工具类库 common_utils 1.TimelineUt ...
- JavaEE-实验一 Java常用工具类编程
该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1. 使用类String类的分割split 将字符串 “Solutions to selected exercises ca ...
- Java程序员常用工具类库 - 目录
有人说当你开始学习Java的时候,你就走上了一条不归路,在Java世界里,包罗万象,从J2SE,J2ME,J2EE三大平台,到J2EE中的13中核心技术,再到Java世界中万紫千红的Framework ...
- Linux 性能分析工具汇总合集
出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章.本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面.如果没有完善的计算机系统知识,网络知识和操作系统知识, ...
随机推荐
- HTML页面顶部出现空白部分(#65279字符?)解决办法
1.在火狐下面用Firebug,选择body,点编辑html的时候,看到是多出了一个这个代表的意思,还真不知道,搜索后了解到是一种中文的编码规则, UTF-8不需要BOM来表明字节顺序. 制作 ...
- node初体验(一)
1.node.js是一个构建在chrome V8引擎上的javascript运行环境 2.node.js特点:单线程.事件驱动.非阻塞IO模型.轻量 3.node.js是单线程的(多个请求都是一个线程 ...
- TERSUS无代码开发(笔记07)-简单实例手机端后台逻辑开发
提交申请逻辑开发 1.添加父级对象引用(从父级对象中获取前端输入框的值) 1.设计数据库表(表名和字段名称不能用中文) 2.设计置数据库主键(可设联合主键) 3.传值形成数据实列处理 4.服务器端处理 ...
- Docker-compose封装mysql并初始化数据以及redis
一.概述 现有一台服务器,需要部署mysql和redis.其中mysql容器,需要在第一次启动时,执行sql文件. redis保持空数据即可. 关于Docker-compose的安装,请参考连接: h ...
- 后端程序员之路 26、CAP理论
可能是CAP理论的最好解释 - 西代零零发 - 博客频道 - CSDN.NEThttp://blog.csdn.net/dc_726/article/details/42784237 CAP理论 - ...
- MySQL:初识数据库
对于大型互联网公司来说,数据的重要性可能比软件本身更重要.据说淘宝业务系统的开发大概消耗约7000万人民币,而其保存的用户数据的价值远高于此,加上数据分析算法的加持,其产生的价值和收益无疑是巨大的,远 ...
- 《C++ Primer》笔记 第1章 开始
输出运算符<< 的计算结果就是其左侧运算对象 std::endl 结束当前行,并将与设备关联的缓冲区中的内容刷到设备中. 程序员常常在调试时添加打印语句.这类语句应该保证"一直& ...
- HDOJ-6685(暴力+思维)
Rikka With Coin HDOJ-6685 主要的思想如下: 首先10元的硬币最多只会用一个,如果用了两个,直接替换成一个10元.一个20元一定不亏. 20元的硬币最多只会用三个,如果用了四个 ...
- redis使用ssh密钥远控靶机
首先说明一下我们的实验目的,我们这个实验需要利用一种公有密码,将公有密钥写入要攻击的服务器的redis数据库,然后使用我们自己的私钥进行远控肉鸡的操作. 实验环境:centos7(靶机,版本无太大 ...
- 扫盲贴|如何评价一款App的稳定性和质量?
作者:友盟+移动开发专家 张文 「崩溃」与「卡顿」.「异常退出」等一样,是影响App稳定性常见的三种情况.相关数据显示,当iOS的崩溃率超过0.8%,Android的崩溃率超过0.4%的时候,活跃用户 ...