说明
guava是google提供的一套java工具,比较好用。在之前的版本(21版本之前)只提供了一个包可以直接引用,现在包分成了jre环境和android环境,这里引用是可以注意下。
附带2个最新的包maven地址。
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>31.0.1-jre</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>31.0.1-android</version>
</dependency>
Optional
guava本身提供了Optional工具,java8自身也提供了,这里采取java8就可以了。
Preconditions
一些前置校验类的工具集合。此处Spring也提供了一些校验类是Assert
部分源码如下:
public static void checkArgument(boolean expression, @CheckForNull Object errorMessage) {
if (!expression) {
throw new IllegalArgumentException(String.valueOf(errorMessage));
}
}
Throwables
Guava Cache
使用本地的缓存来提高访问速度,使用比较频繁。
Cache<String, String> cache = CacheBuilder.newBuilder()
.maximumSize(2) //最大缓存数量
.expireAfterWrite(3, TimeUnit.SECONDS) //对象写入缓存后多久过期
.build();