说明

guava是google提供的一套java工具,比较好用。在之前的版本(21版本之前)只提供了一个包可以直接引用,现在包分成了jre环境和android环境,这里引用是可以注意下。
附带2个最新的包maven地址。

  1. <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
  2. <dependency>
  3. <groupId>com.google.guava</groupId>
  4. <artifactId>guava</artifactId>
  5. <version>31.0.1-jre</version>
  6. </dependency>
  7. <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
  8. <dependency>
  9. <groupId>com.google.guava</groupId>
  10. <artifactId>guava</artifactId>
  11. <version>31.0.1-android</version>
  12. </dependency>

Optional

guava本身提供了Optional工具,java8自身也提供了,这里采取java8就可以了。

Preconditions

一些前置校验类的工具集合。此处Spring也提供了一些校验类是Assert
部分源码如下:

  1. public static void checkArgument(boolean expression, @CheckForNull Object errorMessage) {
  2. if (!expression) {
  3. throw new IllegalArgumentException(String.valueOf(errorMessage));
  4. }
  5. }

Throwables

简化异常和错误的传播。

Guava Cache

使用本地的缓存来提高访问速度,使用比较频繁。

  1. Cache<String, String> cache = CacheBuilder.newBuilder()
  2. .maximumSize(2) //最大缓存数量
  3. .expireAfterWrite(3, TimeUnit.SECONDS) //对象写入缓存后多久过期
  4. .build();

参考