我们有一个内部配置机制,可以在常规xml文件或java Configuration类之外创建spring bean。
在这个配置中,我们有一个mongoTemplate bean,它是用特定的限定符" appMongoTemplate"
创建的。我们可以在我们的服务中@autowired这个mongoTemplate,就像任何常规的spring bean一样:
@Autowired
@Qualifier("appMongoTemplate")
protected MongoTemplate mongoTemplate;
现在我正在尝试使用MongoRepository。 我只是声明一个常规界面:
public interface MyRepository extends MongoRepository<MyDocument, String>
但是当我的应用程序启动时,我在创建存储库时遇到异常,因为它无法找到mongoTemplate bean。 我想我需要指定要使用的mongoTemplate的名称,但我不知道如何。
由于
答案 0 :(得分:2)
XML命名空间和@EnableMongoRepositories
注释都有一个属性来显式连接要用于存储库的MongoTemplate
bean:
<mongo:repositories mongo-template-ref="appMongoTemplate" />
或
@EnableMongoRepositories(mongoTemplateRef = "appMongoTemplate")