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

Nin*_*ker 2 java mapdb

我有一个用例,我想使用opaque byte []作为MapDb的键.我发现了这一点 - 使用字节数组作为Map键 - 快速限制; 并想知道推荐哪种方法.

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

我希望MapDB的核心开发者之一可以权衡这个或者ByteBufferJVM大师.

小智 5

MapDB的作者在这里.

没有包装器就可以使用byte [].Hasher处理hashCode并且等于HTreeMap的方法:

    Map map = db.createHashMap("map")
            .hasher(Hasher.BYTE_ARRAY)
            .keySerializer(Serializer.BYTE_ARRAY)
            .makeOrGet();
Run Code Online (Sandbox Code Playgroud)