如何使用Spring数据MongoRepository在运行时设置集合名称

时间:2014-05-06 09:57:16

标签: spring mongodb repository spring-data

我编写了一个应用程序,它使用Spring MongoRepository连接到Product Sales集合,其中包含所有产品的销售数据。

没有,我遇到了一个问题,因为我现在有几个产品销售集合,而不是一个集合,每个集合都包含一个产品。所有集合结构仍然相同,但现在每个集合名称都类似于“Sales_123”,“Sales_456”,其中数字后缀是产品ID。

这意味着我不能再使用Document注释来指定集合名称。我还能做些什么来将运行时的集合名称传递给MongoRepository吗?

也许,是否有任何可行的方法来插入修改后的MappingMongoEntityInformation,我可以通过某种方式传递集合名称?

或者使用mongoTemplate重新编写整个内容会更好吗?

1 个答案:

答案 0 :(得分:0)

发布答案可以恢复以前的讨论,但是我已经恢复了另一个讨论。我还在这里发布了指向我的答案的链接,以防万一有人发现了这个旧主题。看看https://stackoverflow.com/a/65036567/8031498,在这里我将介绍如何使用spel指定集合名称。