MongoDB

1介绍

一种非关系型数据库,具有以下特点:

高并发, 高性能, 高可用, 简称三高

  • High Performance: 对数据库的高并发读写的要求
  • High Storage: 对海量数据的高效率存储和访问的需求
  • High Scalability && High Available: 对数据的高扩展性和高可用性的需求

其中,与MySQL对应,集合相当于表,文档相当于一条记录。

2 快速上手

step1、安装部署

1
2
3
4
# 拉取镜像
docker pull mongo
# 部署
docker run -di --name mongo-service -p 27017:27017 -v ~/data/mongodata:/data mongo

step2、引入依赖与配置

1
2
3
4
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
1
2
3
4
5
6
spring:
  data:
    mongodb:
      host: 192.168.200.200
      port: 27017
      database: himango

step3、映射

1
2
3
4
5
6
7
@Document("mangodb01")
public class Mangodb01 implements Serializable {
    private static final long serialVersionUID = 1L;
    private String id;
    private Date createdTime;

}

step4、增删改查

1
2
3
4
5
6
7
8
9
// 保存或者修改
mongoTemplate.save(apAssociateWords);
// 查询一个对象
ApAssociateWords apAssociateWords = mongoTemplate.findById("5fc2fc3fb60c9a039c44556e", ApAssociateWords.class);
// 多条件查询
Query query = Query.query(Criteria.where("id").is("1"))       .with(Sort.by(Sort.Direction.DESC,"createdTime"));
List<ApAssociateWords> apAssociateWordsList = mongoTemplate.find(query, ApAssociateWords.class);
// 删除
mongoTemplate.remove(Query.query(Criteria.where("id").is("1")),ApAssociateWords.class);

3 TODO

updatedupdated2024-08-252024-08-25