作者:mobiledu2502891957 | 来源:互联网 | 2023-08-22 15:41
1.什么是mongodbmongodb和redis一样是一种NoSQL存储介质,存储读取快,但实质上它又是一种介于关系型数据库(如mysql,数据存在磁盘中)和非关系型数据库(如r
1.什么是mongodb
mongodb和redis一样是一种NoSQL存储介质,存储读取快,但实质上它又是一种介于关系型数据库(如mysql,数据存在磁盘中)和非关系型数据库(如redis,数据存在内存中)的介质,它数据存在磁盘,但读取又借助内存机制映射进行,所以集成了关系型和非关系型的各自优点。它的设计是基于分布式储存的,可用集群部署来分压。
优点:读取快、数据不易丢失(相对于redis)、支持集群;
缺点:不适合事务处理强度大、联表查询复杂的逻辑
2.Springboot集成使用mongodb
springboot集成使用mongodb分为以下几步:
1.依赖注入
依赖
2.配置连接信息(图中两种配置形式都可以)
注释的形式只使用于mongodb2.x
集群部署时的配置
3.映射类
1.@Document类注解标明该类映射的集合名; 2.@Id注解设置自定义的主键名及类型,不设置的情况下mongodb默认使用ObjectId类型的主键,需要注意的是不管哪种形式,在库中都是以_id的key名来储存的
4.mongodb数据库访问接口及测试使用
数据库接口StudentRepository
MongoRepository提供许多源方法,可以完成对数据库的基本操作,方法可以根据Idea的自动提示可以看到
super自带源方法
当然,若基本方法满足不了需要,可以自写方法,MongoRepository根据方法名来进行语句解析,也支持自定义查询语句
方法名查询方式1
方法名查询方式2
方法名查询方式3
1.自定义语句不是用sql语句,用的是mongodb查询语句; 2.id在库中会转成_id储存所以变量名是_id;mongodb区别字符串的大小写; 3.返回中可以为集合类,也可以是java8的stream格式
3.文档及第三方管理软件
Spring Data MongoDB
studio 3T