Class MD5StoreUtil

java.lang.Object
cn.net.pap.common.bitmap.MD5StoreUtil

public final class MD5StoreUtil extends Object
单例 MD5 存储工具类(线程安全) 使用两个 Roaring64NavigableMap 分别存储高64位和低64位 所有方法均为静态方法
  • Method Details

    • add

      public static void add(String md5Hex)
      添加 MD5 值(32位十六进制字符串)
    • contains

      public static boolean contains(String md5Hex)
      检查是否包含指定的 MD5 值
    • remove

      public static void remove(String md5Hex)
      移除指定的 MD5 值
    • size

      public static long size()
      返回存储的 MD5 数量
    • isEmpty

      public static boolean isEmpty()
      判断是否为空
    • clear

      public static void clear()
      清空所有存储的 MD5 值
    • addAll

      public static void addAll(Iterable<String> md5HexList)
      批量添加 MD5 值
    • containsAll

      public static boolean containsAll(Iterable<String> md5HexList)
      批量检查 MD5 值是否存在
    • toMD5Hex

      public static String toMD5Hex(long high64, long low64)
      将高低64位组合为MD5字符串
    • iterator

      public static Iterator<String> iterator()
      获取所有 MD5 的迭代器(线程安全快照)
    • serialize

      public static void serialize(OutputStream outputStream) throws IOException
      序列化当前存储的MD5数据到输出流
      Parameters:
      outputStream - 输出流
      Throws:
      IOException - 如果发生I/O错误
    • deserialize

      public static void deserialize(InputStream inputStream) throws IOException
      从输入流反序列化MD5数据
      Parameters:
      inputStream - 输入流
      Throws:
      IOException - 如果发生I/O错误
    • serializeToBytes

      public static byte[] serializeToBytes() throws IOException
      序列化当前存储的MD5数据到字节数组
      Returns:
      包含序列化数据的字节数组
      Throws:
      IOException - 如果发生I/O错误
    • deserializeFromBytes

      public static void deserializeFromBytes(byte[] bytes) throws IOException
      从字节数组反序列化MD5数据
      Parameters:
      bytes - 包含序列化数据的字节数组
      Throws:
      IOException - 如果发生I/O错误
    • serializeToFile

      public static void serializeToFile(File file) throws IOException
      序列化当前存储的MD5数据到文件
      Parameters:
      file - 目标文件
      Throws:
      IOException - 如果发生I/O错误
    • deserializeFromFile

      public static void deserializeFromFile(File file) throws IOException
      从文件反序列化MD5数据
      Parameters:
      file - 源文件
      Throws:
      IOException - 如果发生I/O错误
    • estimatedMemoryUsage

      public static long estimatedMemoryUsage()
      获取内存占用估算(字节)