Spring Data访问 MongoDB(十六)----CDI集成

这篇具有很好参考价值的文章主要介绍了Spring Data访问 MongoDB(十六)----CDI集成。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

存储库接口的实例通常由容器创建,在使用Spring Data时,Spring是最自然的选择。从1.3.0版本开始,Spring Data MongoDB附带了一个自定义的CDI扩展,允许你在CDI环境中使用存储库抽象。扩展是JAR的一部分。要激活它,请将Spring Data MongoDB JAR放入类路径中。现在,你可以通过为MongoTemplate实现CDI Producer来设置基础设施(infrastructure),如下例所示:

class MongoTemplateProducer {

    @Produces
    @ApplicationScoped
    public 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属性,如下例所示:文章来源地址https://www.toymoban.com/news/detail-838997.html

class RepositoryClient {

  @Inject
  PersonRepository repository;

  public void businessMethod() {
    List<Person> people = repository.findAll();
  }
}

到了这里,关于Spring Data访问 MongoDB(十六)----CDI集成的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring Data MongoDB实现@DBRef级联存储

    当使用上面的示例保存Person时,会报以下错误,原因是:被引用的对象的id属性为null 出现 MappingException 异常的原因: 被引用的对象在保存到数据库之前没有生成id。确保在保存被引用对象之前为其生成一个唯一的id。 被引用的对象在数据库中的id属性为null。在使用 @DBRef 进行查

    2024年02月12日
    浏览(32)
  • 13、MongoDB--通过 SpringBoot 整合 Spring Data MongoDB(【连接多个 MongoDB 服务器】、【高级定制 MongoDB 客户端】的简单介绍)

    放弃 Spring Boot 为 MongeDB 提供的自动配置,接下来同样要干如下事情: 手动配置多组 ReactiveMongoDatabaseFactory 和 ReactiveMongoTemplate,要连几个 MongoDB 服务器就配置几组。 同步 API 则使用 MongoDatabaseFactory 和 MongoTemplate。 针对不同 MongoDB 服务器,分别开发相应的 DAO 组件类,建议将它

    2024年03月19日
    浏览(48)
  • 三、Spring boot集成mongodb

    spring-data-mongodb提供了MongoTemplate与MongoRepository两种方式访问mongodb,MongoRepository操作简单,MongoTemplate操作灵活,我们在项目中可以灵活适用这两种方式操作mongodb,MongoRepository的缺点是不够灵活,MongoTemplate正好可以弥补不足。 2.1 初始化工程 使用 Spring Initializr 快速初始化一个

    2024年02月05日
    浏览(29)
  • Spring Boot进阶(55):SpringBoot之集成MongoDB及实战使用 | 超级详细,建议收藏

            随着大数据时代的到来,数据存储和处理变得越来越重要。而MongoDB作为一种非关系型数据库,具有高效的数据存储和处理能力,被越来越多地应用于各种领域。尤其在Web应用开发中,SpringBoot框架已经成为了主流选择之一。在这篇文章中,我们将探讨如何将MongoD

    2024年02月17日
    浏览(32)
  • 【工作记录】springboot集成spring-data-elasticsearch访问es及问题解决

    ​ 前文我们介绍了通过可视化爬虫爬取新闻到Mysql库、基于docker-compose的elk集群部署及抽取mysql数据到es的过程,本文我们介绍通过集成springboot和spring-data-elasticsearch客户端完成连接es并查询数据的开发过程以及遇到的问题和解决方案,希望对大家能有所帮助,对文中内容有任何

    2023年04月10日
    浏览(31)
  • Spring MongoDB

    为什么选择MongoDB,而不是其它的数据库。 在SQL和NoSQL之间有一个大的争论。 在SQL中,创建Tables。 在NoSQL中,我们不维持这个结构。 为什么这样重要。 因为SQL在19世纪70年代变得流行的时候,在那时存储是昂贵的。 我们需要确保使用最小的存储,这样我们可以存储最大量的数

    2024年02月07日
    浏览(19)
  • Spring Boot 整合 MongoDB 实战

    MongoDB是一种NoSQL数据库,而Spring Boot是一个用于快速构建Java应用程序的开发框架。本文将介绍如何使用Spring Boot整合MongoDB,实现数据的持久化和操作。通过本文的学习,读者将了解到Spring Boot和MongoDB的基本概念和用途,并理解为什么选择使用它们进行整合。 在开始整合之前,

    2024年02月14日
    浏览(35)
  • Spring Boot中快速操作Mongodb

    在Spring Boot中集成Mongodb非常简单,只需要加入Mongodb的Starter包即可,代码如下: 然后配置Mongodb的连接信息: 完整配置信息请参考下面: 配置好了之后就直接可以注入MongoTemplate操作数据了 首先创建一个实体类,我们这边用文章来做实体类,定义如下字段: 实体类中的注解解释

    2024年01月17日
    浏览(32)
  • MongoDB文档-进阶使用-spring-boot整合使用MongoDB---MongoRepository完成增删改查

    阿丹:         之前学习了在MongoDB客户端上的MongoDB语句现在将MongoDB整合到spring项目。 MongoDB文档--基本概念_一单成的博客-CSDN博客 MongoDB文档--基本安装-linux安装(mongodb环境搭建)-docker安装(挂载数据卷)-以及详细版本对比_一单成的博客-CSDN博客 MongoDB文档--基本安装-linu

    2024年02月14日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包