java - 在不提供哈希码的情况下从 Redis 中检索 Person 对象

标签 java spring spring-mvc redis spring-data-redis

我正在开发一个 Spring-MVC 应用程序,我在其中将一个 Person 对象插入到 Redis 中。现在插入对象时,我还需要为检索到的 Person 提供 hashCode 值。有什么办法,我可以在不传递 hashCode 的情况下检索 Person 对象,只传递关键部分。请告诉我。这是插入代码:

插入代码:

Person person = // person retrieved from DB.
this.userAppRegistration.getRedisTemplate().opsForHash().put(String.valueOf(person.getId()),person.hashCode(),person);

检索代码:

this.userAppRegistration.getRedisTemplate().opsForHash().get("Key_Available",)

此时我无法访问我插入的人的哈希码。我怎样才能仅使用键检索 Person 对象。非常感谢。 :-)

最佳答案

Redis 是一个键值存储。您将一个带有键的值放在那里,然后使用相同的键检索它。

您已决定将您的 key 设为人的 ID、哈希码和人本身(或者最有可能是它的 toString())的组合。不要那样做。它毫无意义,正如您现在注意到的那样,它使您无法检索该值。

关于java - 在不提供哈希码的情况下从 Redis 中检索 Person 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32093626/

相关文章:

spring - <mvc :resources> type not resolved

java - 使用 new() 实例化的对象中的 Spring Autowired 对象

java - 没有 createQuery() 的 Hibernate 连接

java - GenericDAO 方法(例如 save)不适用于 Hibernate 和 Spring

java - 尝试使用 getChildAt() 取消选择 View

java - 如何开启Spring WebFlux的访问日志?

java - Spring @ResponseStatus 返回空响应

java - SpringMVC : How to filter the client's IP?

java - 如何在开始新 Activity 之前等待确定按钮

java - 的整数值给出了意想不到的结果