06Java生态库
文章
caffeine
Caffeine本地缓存详解1 概述简介Caffeine是一种高性能的缓存库,是基于Java 8的最佳(最优)缓存框架。 基于Google的Guava Cache,Caffeine提供一个性能卓越的本地缓存(local cache) 实现, 也是SpringBoot内置的本地缓存实现。(Caffeine性能是Guava Cache的6倍) Caffeine提供了灵活的结构来创建缓存,并且有以下特性: 自动加载条目到缓存中,可选异步方式 可以基于大小剔除 可以设置过期时间,时间可以从上次访问或上次写入开始计算 异步刷新 keys自动包装在弱引用中 values自动包装在弱引用或软引用中 条目剔除通知 缓存访问统计 依赖引入Maven依赖 123456<dependency> <groupId>com.github.ben-manes.caffeine</groupId> <artifactId>caffeine</artifactId> <version>2.9.2</version...
commons-bean
https://commons.apache.org/ 引入依赖12345<dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.4</version></dependency> BeanUtils/BeanUtilsBean123拷贝: cloneBean/copyProperties/copyProperty获取:getArrayProperty/getSimpleProperty/getProperty其他操作:setProperty设置属性 populate将Bean设置到Map中 describe将Bean转成Map PropertyUtils类1234567判断:isReadable/isWriteable获取: getProperty/getSimpleProperty/getPro...
commons-collections4
https://commons.apache.org/ 引入依赖123456<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 --><dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.4</version></dependency> CollectionUtils 集合工具类12345678910111213141516添加/删除:addAll/addIgnoreNull/retainAll/removeAll/获取: find/get/containsAny/index/size/sizeIsEmpty/select/selectRejected/subtract typedColl...
commons-io
https://commons.apache.org/ 引入依赖12345<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.11.0</version></dependency> FileUtils 文件操作工具类123456789101112文件夹操作: copyDirectory/deleteDirectory/cleanDirectory/getTempDirectory/getTempDirectoryPath moveDirectory/moveDirectoryToDirectory/moveFileToDirectory/moveToDirectory forceMkdir/getUserDirectory/getUserDirectoryPath文件操作: touch/copyFile/copyURLToFile/move...
commons-lang3
引入依赖12345<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version></dependency> 数据类型工具类StringUtils 字符串工具类123456789101112包含判断方法:contains/containsXXX 字符串替换方法:replace/replaceXXX 获取子串:substring/substringXXX 判断方法:1、isEmpty/isNotEmpty/isBlank/isNotBlank/isNumeric/isWhitespace2、sartsWith/startsWithAny/endsWith/endsWithIgnoreCase索引(index):indexOf/indexOfXXX/tIndexOf/lastIndexOfXXX处理方法: ...
fastjson
两种类型之间转换。 Java对象和json格式之间转换。 * 序列化:转换成json格式 * json字符串 * json字节码 * 反序列化:转换成java格式 * java对象 * jsonobject如果没有指定java对象 https://blog.csdn.net/qq_37436172/article/details/127334627 https://www.jianshu.com/p/f5407d45d590 ## 序列化 12345678910111213141516171819package com.alibaba.fastjson;public abstract class JSON { // 将Java对象序列化为JSON字符串,支持各种各种Java基本类型和JavaBean public static String toJSONString(Object object, SerializerFeature... features); // 将Java对象序列化为JSON字符串,返回JSON字符...
gson
两种类型之间转换。Java对象和json格式之间转换。 序列化:转换成json格式 json字符串 json字节码 反序列化:转换成java格式 java对象 jsonobject如果没有指定java对象 1 Gson介绍GSON是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库。可以将一个Json字符转成一个Java对象,或者将一个Java转化为Json字符串 在使用Gson时需要先引入Gson依赖123456<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.5</version> </dependency> 2 ...
Junit
## 1 概述 ### 是什么 https://blog.csdn.net/weixin_43498556/article/details/120839089 JUnit是Java编程语言的单元测试框架,用于编写和可重复运行的自动化测试。 1. 编码完成就可以立刻测试,尽早发现问题 2. 将测试保存成为了代码,可以随时快速执行 3. 可以嵌入持续集成流水线,自动为每次代码修改保驾护航 ### 注意事项 * 测试方法必须使用 @Test 修饰 * 测试方法必须使用 public void 进行修饰,不能带参数 * 一般使用单元测试会新建一个 test 目录存放测试代码,在生产部署的时候只需要将 test 目录下代码删除即可 * 测试代码的包应该和被测试代码包结构保持一致 * 测试单元中的每个方法必须可以独立测试,方法间不能有任何依赖 * 测试类一般使用 Test 作为类名的后缀 * 测试方法使一般用 test 作为方法名的前缀 ### 测试失败 * Failure:一般是由于测试结果和预期结果不一致引发的,表示测试的这个点发现了问题 * Error:是由代码...
log4j
https://blog.csdn.net/qq_43842093/article/details/122810961 appender ConsoleAppender: 日志输出到控制台; FileAppender:输出到文件; RollingFileAppender:输出到文件,文件达到一定阈值时,自动备份日志文件; DailyRollingFileAppender:可定期备份日志文件,默认一天一个文件,也可设置为每分钟一个、每小时一个; WriterAppender:可自定义日志输出位置。 日志级别一般日志级别包括:ALL,DEBUG, INFO, WARN, ERROR,FATAL,OFF 输出格式 org.apache.log4j.HTMLLayout(以HTML表格形式布局), org.apache.log4j.PatternLayout(可以灵活地指定布局模式), org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串), org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) 123...














