第7章 Spring Data MongoDB 实战
🎯 本章学习目标
学完本章,你应当能够:
- 用
spring-boot-starter-data-mongodb在 Spring Boot 3 项目中完成 MongoDB 接入,说清MongoClient、MongoTemplate、MongoRepository三者的分层关系(本章附 com.yjoffer.mongodb 完整可运行工程,见 7.1)。 - 会做两套 API 的选型:Repository(对照 JPA-Spring Data 风格,简单 CRUD)vs MongoTemplate(对照 MyBatis 风格,复杂动态查询),并能在同一个项目里混用。
- 掌握实体映射注解:
@Document、@Id、@Field、@DBRef,理解 Spring 帮你做的 POJO↔BSON 转换发生在哪一层(对比第 2 章手动挂 CodecRegistry)。 - 会写派生查询方法(
findByUsernameAndAgeGreaterThan)、@Query原生条件、分页Pageable与Sort,并知道skip/limit深分页的坑在这里依然存在。 - 用
mongoTemplate.aggregate()把第 5 章的聚合管道搬进 Spring 项目,映射到强类型结果类。 - 理解
@Transactional在 MongoDB 上的生效前提(副本集 + 驱动 ClientSession),以及 standalone 环境下静默失效这个经典坑。 - 建立与 MyBatis-Plus / JPA 的经验对照:什么能直接迁、什么要换思路,并避开内嵌文档
@DBRef的性能陷阱。
关注公众号,免费阅读全文
请免费关注 预见猿份 公众号,发送:yjoffer.com,获取解锁密码
微信扫码关注关注公众号回复获取密码后,在下方输入并点击解锁,本机后续再读无需重复输入。
