MangoDB

概述

MangoDB具有高性能、高存储、数据具有结构性的特点。

与Mysql相比,他的性能更高;与Redis相比,他的数据更有结构性

应用场景:数据量较大,要求加载数据快

环境配置

  1. 拉取镜像
sh 复制代码
docker pull mango
  1. 创建容器
sh 复制代码
docker run -di --name mongo-service --restart=always -p 27017:27017 -v /data/mongodata:/data mongo
  1. 导入依赖
xml 复制代码
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
  1. 配置文件
yml 复制代码
spring: 
	data:
		mongodb: 
			host: 192.168.133.128
			port: 27017
			database: DatabaseName
  1. 创建映射
    将实体映射到MangoDB的集合,类似将实体映射到Mysql的表
java 复制代码
@Document("ap_associate_words")
public class ApAssociatewords implements Serializable{
	private static final long serialVersionUID = 1L;
	
	private String id;
	/**
	 * 联想词
	 */
	private String associatewords;
	
	/**
	 * 创建时间
	 */
	private Date createdTime;
}
  1. 示例代码
java 复制代码
public class MangoDemo{
	@Autowired
	MangoTemplate mangoTemplate;

	public void test(){
		//保存或修改(根据ID,有ID就修改,无ID就保存)
		mangoTemplate.save(apAssociatewords);
		
		//根据ID查询集合得到实体
		ApAssociatewords apAssociatewords = mongoTemplate.findById("5fc2fc3fb60c9a039c44556e",ApAssociatewords.class);

		//根据条件去查询实体
		Query query = Query.query(Criteria.where("associatewords").is("测试字段")).with(Sort.by(Sort.Direction.DESC,"createdTime"));
		List<ApAssociatewords apAssociatewordsList = mongoTemplate.find(query, ApAssociateWords.class);

		//根据条件删除文档
		mongoTemplate.remove(Query.query(Criteria.where("associatewords").is("测试字段")),ApAssociateMords.class);

	}
}
相关推荐
吴声子夜歌34 分钟前
MongoDB 4.2——安装 MongoDB
数据库·mongodb
吴声子夜歌37 分钟前
MongoDB 8.0——MongoDB的安装
数据库·mongodb
吴声子夜歌1 天前
MongoDB 4.2——了解应用程序的动态
数据库·mongodb
czhaii2 天前
STC ai助手单片机工程项目创建实例
数据库·mongodb
吴声子夜歌2 天前
MongoDB 4.2——配置分片
数据库·mongodb
吴声子夜歌2 天前
MongoDB 4.2——分片简介
数据库·mongodb
吴声子夜歌3 天前
MongoDB 4.2——备份
数据库·mongodb
吴声子夜歌3 天前
MongoDB 4.2——选择片键
数据库·mongodb
吴声子夜歌3 天前
MongoDB 4.2——安全介绍
数据库·安全·mongodb
吴声子夜歌4 天前
MongoDB 4.2——应用程序设计
数据库·mongodb