我目前正在开发一个使用Cassandra / Solr和Java CRUD层的项目。 SolrJ(至少我们一直坚持使用的版本,不能很好地映射Cassandra UUID或TimeUUID字段,因此我所看到的建议是将UUID视为字符串中的字符串。 POJO,然后让getter和setter处理转换进出。
在传入的UUID上使用toString()
似乎工作正常但是,当我们尝试从字符串中取出UUID时,我们遇到了问题。使用UUID.nameUUIDFromBytes(string.getBytes())
看起来可能是一个答案,但这只是给我们一个基于字符串生成的UUID,它完全打破了我们的主键。
有没有人遇到过这个?如果是这样,你找到了解决方案吗?
非常感谢!
答案 0 :(得分:3)
您正在寻找的是静态UUID.fromString(String name)
方法。它接受在toString()
方法中创建的String表示,并创建UUID。
以下是文档的链接:https://docs.oracle.com/javase/7/docs/api/java/util/UUID.html