java 操作MongoDB
首先引入mongo的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
//版本自定
</dependency>
yml配置文件
data:
mongodb:
uri: mongodb://127.0.0.1:27017
//集群方式可以写
uri:mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019/text?replicaSet=rset01
mongo的操作
新增操作
@Autowired
private MongoTemplate mongoTemplate;
//这里的test实体 在实体中要指定mongo要操作的集合 也就是表
public void insert(text text) {
mongoTemplate.insert(text);
//或者在新增时 指定集合名
mongoTemplate.insert(brand,"text");
}
更新操作
Update update = new Update();
update.set("这里是要更新的集合字段名", LocalDateTime.now());
//可以一直在后面.set或者另起一行update.set都可以
update.set("time", LocalDateTime.now()).set("time", LocalDateTime.now());
//mongo的更新分为多种
mongoTemplate.updateFirst()
mongoTemplate.update()
mongoTemplate.updateMulti()
//这里举例条件更新一条数据
mongoTemplate.updateFirst("更新条件",updete,"集合名")
//更新条件
Query query=Query.query(Criteria.where("集合字段名称").is("对应的值"))
//更新操作
//text.class 可以替换为集合名
mongoTemplate.updateFirst(query,update,text.class)
删除操作
//删除操作和更新操作大同小异
mongoTemplate.remove(Query.query(Criteria.where("集合字段名称").is("对应的值"))), test.class);
查询操作
//查询一条数据
mongoTemplate.findOne(new Query(Criteria.where("集合字段名称").is(id)), testVo.class "这里我们可以返回自定义的Vo类型也可以不指定","集合名")
// mongoTemplate.find 查询的将是一个List<> 集合
mongoTemplate.find()