2017年做网站好难,投资公司名字起名大全,足球梦网站建设的基本思路,品牌推广三元论存储库接口的实例通常由容器创建#xff0c;在使用Spring Data时#xff0c;Spring是最自然的选择。从1.3.0版本开始#xff0c;Spring Data MongoDB附带了一个自定义的CDI扩展#xff0c;允许你在CDI环境中使用存储库抽象。扩展是JAR的一部分。要激活它#xff0c;请将Sp…存储库接口的实例通常由容器创建在使用Spring Data时Spring是最自然的选择。从1.3.0版本开始Spring Data MongoDB附带了一个自定义的CDI扩展允许你在CDI环境中使用存储库抽象。扩展是JAR的一部分。要激活它请将Spring Data MongoDB JAR放入类路径中。现在你可以通过为MongoTemplate实现CDI Producer来设置基础设施infrastructure如下例所示
class MongoTemplateProducer {ProducesApplicationScopedpublic MongoOperations createMongoTemplate() {MongoDatabaseFactory factory new SimpleMongoClientDatabaseFactory(MongoClients.create(), database);return new MongoTemplate(factory);}
}Spring Data MongoDB CDI扩展选择可用的MongoTemplate作为CDI bean并在容器请求存储库类型的bean时为Spring Data存储库创建代理。因此获取Spring Data存储库的实例需要声明Inject属性如下例所示
class RepositoryClient {InjectPersonRepository repository;public void businessMethod() {ListPerson people repository.findAll();}
}