mongotemplate mongodb常见操作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

mongotemplate mongodb常见操作
MongoTemplate是Spring提供的用于操作MongoDB的一个工具类,它封装了一系列常见的MongoDB操作。

1. 插入文档:
```
MongoTemplate mongoTemplate;
mongoTemplate.insert(objectToSave, collectionName);
```
2. 更新文档:
```
Query query = new Query(Criteria.where("field").is(value)); Update update = new Update().set("fieldToUpdate", newValue); mongoTemplate.updateMulti(query, update, collectionName);
```
3. 删除文档:
```
Query query = new Query(Criteria.where("field").is(value)); mongoTemplate.remove(query, collectionName);
```
4. 查询文档:
```
Query query = new Query(Criteria.where("field").is(value));
List<T> results = mongoTemplate.find(query, T.class, collectionName);
```
5. 条件查询:
```
Query query = new Query();
query.addCriteria(Criteria.where("field").is(value));
List<T> results = mongoTemplate.find(query, T.class, collectionName);
```
6. 分页查询:
```
Query query = new Query().skip(page * size).limit(size); List<T> results = mongoTemplate.find(query, T.class, collectionName);
```
7. 聚合查询:
```
Aggregation aggregation = Aggregation.newAggregation( Aggregation.match(Criteria.where("field").is(value)), Aggregation.group("groupField").count().as("count") );
AggregationResults<ResultType> result = mongoTemplate.aggregate(aggregation, collectionName, ResultType.class);
List<ResultType> results = result.getMappedResults();
```
8. 排序:
```
Query query = new Query().with(Sort.by(Sort.Direction.DESC, "field"));
List<T> results = mongoTemplate.find(query, T.class, collectionName);
```
9. 查询总数:
```
Long count = mongoTemplate.count(query, collectionName); ```
以上是MongoTemplate的一些常用操作,可根据具体业务需求进行调整和组合使用。

相关文档
最新文档