非关系型数据库和关系型数据库(不是非关系型数据库)

非关系型数据库和关系型数据库,原文标题:这么强大的非关系型数据库,你确定不来看看。在之前就发过有关非关系型数据库之一的redis数据库

非关系型数据库和关系型数据库,原文标题:这么强大的非关系型数据库,你确定不来看看。

在之前就发过有关非关系型数据库之一的redis数据库,没看过的可以去看看,

今天的重点就放在与他类型一致但作用和用法不相同的另一款数据库那就是mongdb;

先来说一说mongdb是什么

mongdb是基于分布式文件存储的数据库有着高性能、可扩展、易部署、易使用,存储数据非常方便的优势

MongoDB中的记录是一个文档,它是由字段和值对组成的数据结构。MongoDB文档类似于JSON对象。字段的值可以包括其他文档,数组和文档数组。

非关系型数据库和关系型数据库(不是非关系型数据库)

使用文档的优点是:

文档(即对象)对应于许多编程语言中的本机数据类型。

嵌入式文档和数组减少了对昂贵连接的需求。

动态模式支持流畅的多态性。

主要功能

高性能

MongoDB提供高性能的数据持久性。特别是,

对嵌入式数据模型的支持减少了数据库系统上的I / O活动。

索引支持更快的查询,并且可以包括来自嵌入式文档和数组的键。

丰富的查询语言

MongoDB支持丰富的查询语言,以支持读写操作(CRUD)

高可用性

MongoDB的复制工具(称为副本集)提供:

自动故障转移

数据冗余。

甲副本集是一组保持相同的数据集,从而提供冗余和提高数据可用性的MongoDB服务器。

一般来说我们使用mongdb数据库和redis差不多,都是在代码里面使用的,而不是单纯在可视化软件里面敲一些命令

所以今天的重点也会是在java代码里面操作mongdb,至于想学习基本的命令的可以去下面的链接自行去学习

https://mongodb.net.cn/manual/crud/

下面就来使用mongdb的基本操作,下面的例子都是基于springboot和maven构建的工程

先添加依赖

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.8.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> </dependencies>

在yml文件里面配置

spring: data: mongodb: port: 27017 #需要替换成自己的ip和端口 host: 192.168.159.132

创建一个实体

@Document(collection = "person")public class Person { private String id; private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public Person(String id,String name, int age) { this.name = name; this.id = id; this.age = age; } public String getId() { return id; } public String getName() { return name; } public int getAge() { return age; } @Override public String toString() { return "Person [id=" id ", name=" name ", age=" age "]"; }}

注意:这里的@Document(collection = "person") 表示集合(相当于mysql里面的表的概念)

编写CRUD代码

@RestControllerpublic class Demo { @Autowired private MongoOperations mongoOperations; @GetMapping("/save") public void test(){ Person person = new Person("哈哈",18); mongoOperations.insert(person); } @GetMapping("/get") public void get(){ Person person = mongoOperations.findById("61406963d9545626d6063bb9", Person.class); System.out.println(person); } @GetMapping("/update") public void update(){ Query query = new Query(); query.addCriteria(Criteria.where("id").is("61406963d9545626d6063bb9")); Update update = new Update(); update.set("name","xiaoliu").set("age",100); mongoOperations.updateFirst(query,update,Person.class); } @GetMapping("/delete") public void delete(){ Query query = new Query(); query.addCriteria(Criteria.where("id").is("61406963d9545626d6063bb9")); mongoOperations.remove(query,Person.class); }}

在posm测试验证,这里只验证保存跟查询

非关系型数据库和关系型数据库(不是非关系型数据库)非关系型数据库和关系型数据库(不是非关系型数据库)

非关系型数据库和关系型数据库(不是非关系型数据库)

非关系型数据库和关系型数据库(不是非关系型数据库)

这些都是mongdb的入门基础操作后续还会更新mongdb的高级操作,感谢大家的支持

本文《非关系型数据库和关系型数据库(不是非关系型数据库)》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。

随机文章

站长导航
友情链接交换
搜素引擎算法
网站内容优化
GEO培训
SEO小小课堂网
SEO教程
站长导航

百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:楠哥科普,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/348588.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注