spring数据redis的springbean重写

envsm3lx  于 2021-06-09  发布在  Redis
关注(0)|答案(1)|浏览(425)

我试图重写rediscustomconversions[initial post](使用redis存储库的rediscustomconversions注意到一些不一致的行为。
当我从ide运行SpringBoot应用程序时,我得到了上面文章中提到的错误,但是如果使用java-jar myapp.jar执行该应用程序,它就可以正常工作。听起来不错,但这让我怀疑这种行为是否一致?i、 我的超负荷bean会一直被连接吗?还是随机的?
我还从/actuator/beans端点注意到,在ide中执行时

redisCustomConversions: {
  aliases: [ ],
  scope: "singleton",
  type: "org.springframework.data.redis.core.convert.RedisCustomConversions",
  dependencies: []

但从命令行运行时,我看到了这一点。

redisCustomConversions: {
  aliases: [ ],
  scope: "singleton",
  type: "org.springframework.data.redis.core.convert.RedisCustomConversions",
  resource: "class path resource [com/my/project/cache/config/RedisConfig.class]",
  dependencies: [
   "MyWriterConverter",
   "MyReaderConverter"
]

所以问题是,我们能依靠这种行为吗?或者它是随机的,对于某些部署,将加载默认的rediscustomconversions,而对于其他部署,将加载mycustom的rediscustomconversions(这将使应用程序崩溃,因为redis中的数据格式将不同)?

enyaitl3

enyaitl31#

我和你有同样的问题,在我的头撞在墙上的时间比我想承认的要长,我在Spring Data gitter中问过。他们这样回答:
使用spring boot时,需要声明 @EnableRedisRepositories 以及 @Bean 的定义 RedisCustomConversions 在同一配置类上。这是目前的限制 @EnableRedisRepositories 是建的。

相关问题