java - 如何在 MapDB 中使用字节数组作为键

标签 java mapdb

我有一个用例,我想使用不透明的 byte[] 作为 MapDb 的键。我发现了这个 - Using a byte array as Map key - 快速限制;并想知道推荐哪种方法。

我不想创建一堆临时对象和序列化开销,但似乎 ByteBuffer.wrap(my_bytes) 正是 Java 所指向的地方。

我希望 MapDB 的核心开发人员之一能够对此或 ByteBuffer JVM 专家发表意见。

最佳答案

这里是 MapDB 作者。

可以在没有包装器的情况下使用 byte[]。 Hasher 可以处理 HTreeMap 的 hashCode 和 equals 方法:

    Map map = db.createHashMap("map")
            .hasher(Hasher.BYTE_ARRAY)
            .keySerializer(Serializer.BYTE_ARRAY)
            .makeOrGet();

关于java - 如何在 MapDB 中使用字节数组作为键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20671657/

相关文章:

java - 从 fragment 打开的 Activity 立即关闭

java - 本地化 xliff 错误消息

java - 我应该在哪里放置 XSD 文件以用于 JAXB 代码生成和 XML 验证

java - 从CSV文件添加数据和输出数据必须在java中按行对齐

java - 将 Integer 的 ArrayList 与多个 ArrayList 进行比较以提取共同值

java - gwt javax.servlet.ServletContext 日志 : Exception while dispatching incoming RPC call creating mapdb db

java - MapDB在创建CircularQueue时不接受Serializer

java - Twilio 调用电话号码屏蔽