四时宝库

程序员的知识宝库

springboot mongodb最近使用心得,希望你能用得上,避免走弯路1

背景

对于大部分程序员在工作中,用到最多的应该是关系型数据库,再具体点可能就是目前最火的MySQL,但是关系型数据库由自身的局限性,更适合强关系结构,或者说确定的结构,对于开发中的半结构(举例就是一个表中的多条记录的结构不一样)或者是表结构需要灵活扩展的需求,就显得无能为力,当然5.7后可以支持JSON数据类型,但是还是不方便,只适合查询,不够灵活。这些就需要一种更为灵活的数据库,这也就是MongoDB要解决的问题。现在市面上的书籍都是些MongoDB Shell的操作,然而实际应用中,我们大多数是用的经过封装的API,所以在实际工作中使用MongoDB查用中文的API的资料还很少的,我写这篇文章的初衷就是为了在springboot项目中,使用相关API快速的方便的进行开发。

关系型数据库对比

和springboot的集成

1 引入jar包

2 使用相关api

springboot 提供2种方式使用: 1 映射实体方式操作MongoRepository(类似于JPA的使用) 2 非映射实体方式操作MongoTemplate (推荐使用,更加灵活)。

2.1 MongoRepository方式,这种方式更适合文档结构固定的数据,可以和MySQL进行等价转换。

2.2 MongoTemplate 方式,这种方式非常灵活。

2.2.1 精确和模糊查询

2.2.2 分页查询,重点是query.with 里面的参数

2.2.3 聚合查询

2.2.4 嵌套查询

需要借助聚合查询的unwind 扁平化处理

2.2.5 嵌套更改(更改在项目中都是最重要的)

嵌套文档:

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接