`

springdatamongodb_api

    博客分类:
  • API
 
阅读更多

1.查询条件

Criteria

is=相等,in=在列表中,and=且,

Criteria.where("dbid").is(dbid).and("groupTypeId").in(gtIds).and("depId").in(deptRels).and("isPrivate").exists(false).and("itemTypeId").nin(hiddenIds)

nin不属于

exists 字段存在

多个critreia  or

new Criteria().orOperator(filterCriteria.toArray(new Criteria[filterCriteria.size()])

Criteria elemMatch(Criteria c)

Order 

order = new Order(orderItem.isDesc() ? Direction.DESC : Direction.ASC, orderItem.getPropertyName());

 

Sort 

Sort(Order...)

 

Query

query.addCriteria(critreia)

query.withHint

query.with(new Sort(new Order(Direction.DESC, "index")));

query.limit(limit);

 

Update 

update = new Update();

update.set(key, Object);设置属性key的值为object

update.inc(propName, Number);属性key的值加number

push(String key, Object value) ;往数组,属性值为的key添加一个元素value

update.pull(property, value);数组,属性值为的key移除一个元素value  或者Criteria criteria = new Criteria(pullProperty);criteria.is(value);根据条件移除,元素中的某个属性pullProperty条件值value

 

Update pop(String key, Position pos)数组key移除出一个位置的值(Position是first或laster)

MongoTemplate

public <T> List<T> find(Query query, Class<T> entityClass)

mongoTemplate.findAndRemove(query, Approvers.class);

mongoTemplate.findOne(Query query, Class<T> entityClass)

public <T> T findAndModify(Query query, Update update, FindAndModifyOptions options, Class<T> entityClass)

mongoTemplate.save(entity);

public WriteResult updateMulti(Query query, Update update, Class<?> entityClass)

long count(Query query, Class<?> entityClass, String collectionName)

 

 

mongodb存对象的引用

对像有这个注解属性

@DBRef

private StreamDynamic streamDynamic;

 

 

 

mongodb 操作数组private <T> void updateArrayByKey(String id, String property, String pullProperty, Object value, Class<T> entityClass, boolean delete) {

Query query = new Query();

query.addCriteria(Criteria.where("_id").is(id));

Update update = new Update();

if (delete) {

if (pullProperty == null) {

update.pull(property, value);

} else {

Criteria criteria = new Criteria(pullProperty);

criteria.is(value);

update.pull(property, criteria.getCriteriaObject());

}

} else {

update.push(property, value);

}

mongoTemplate.findAndModify(query, update, entityClass);

}

分享到:
评论

相关推荐

    基于springboot和springdatamongodb的美食菜谱网站.zip

    【标题】"基于Springboot和SpringDataMongoDB的美食菜谱网站"是一个示例项目,展示了如何使用Spring Boot框架和Spring Data MongoDB模块构建一个在线的美食菜谱平台。这个项目的核心在于利用现代Java开发工具和技术...

    提高MongoDB使用效率SpringDataMongoDB.zip

    它使用了熟悉的 Spring 概念,例如用于核心 API 的模块类,轻量级仓库风格的数据访问。Spring Data MongoDB 项目提供了集成 MongoDB 文档数据库。Spring Data MongoDB 的核心功能区是一个 POJO 中心模型,用于与 ...

    springMongodb参考文档中文版

    - **核心概念**:虽然不需要深入了解Spring API的具体细节,但对Spring框架背后的原理有一定认识是非常重要的,比如IoC容器的概念。 #### 2. 了解NoSQL和文档数据库 - **NoSQL**:一种广泛采用的非关系型数据库技术...

    mongodb&spring&struts&springdatamongodb整合,带所有jar,需要的拿走

    Spring Data MongoDB是Spring Data项目的一部分,它为MongoDB提供了简单易用的API,开发者可以避免直接编写MongoDB的原生驱动代码。Spring Data MongoDB支持自动实体映射,通过注解即可定义对象与MongoDB集合之间的...

    SpringDataMongoDB多文档事务的实现

    Spring Data MongoDB 多文档事务实现详解 正如标题所示,Spring Data MongoDB 多文档事务的实现是 MongoDB 4.0 版本中最受期待的特性之一。本文将详细介绍如何使用 Spring Data MongoDB 实现多文档事务,并提供了...

    SpringDataMongoDB:SpringMVC SpringData MongoDB注解

    版本 1.0 日期:2013 年 3 月 7 日 Simple Spring MVC、Spring DATA、MongoDB、Annotations Project With one Entity only Save、update、delete、findById、FindAll 方法 Controller、Services、Dao 层返回 JSON ...

    Spring Data MongoDB中文文档

    - **MongoTemplate**: 提供了用于执行 CRUD 操作的高级 API。 - **Query**: 支持基于方法名称的查询,无需编写复杂的查询语句。 - **Aggregation**: 支持 MongoDB 的聚合框架,便于进行复杂的数据分析。 - **...

    javasnmp源码-spring-data-mongodb-demo:SpringDataMongoDB4.0事务

    java snmp 源码 layout title tags categories description post SpringMVC+Spring-Data+MongoDB4.0开启事务支持示例 ...探索使用Spring5和MongoDB4.0,如何开启事务 ...最近项目中用到了Nosql数据库mongodb和SpringMVC...

    使用kotlin语言连接mongodb服务进行添加数据操作

    使用kotlin语言连接mongodb服务进行添加数据操作使用kotlin语言连接mongodb服务进行添加数据操作

    spring-data使用mongodbTemplate对MongoDB进行读写操作

    MongoDBTemplate是Spring Data MongoDB的核心组件,它提供了丰富的API来执行常见的数据库操作。 首先,让我们深入理解`MongoDBTemplate`。它是MongoDB操作的抽象层,封装了大量的CRUD(创建、读取、更新、删除)...

    基于springboot+mongodb搭建的简约个人博客系统.zip

    开发者可能创建了MongoDB的Repository接口,利用SpringDataMongoDB提供的功能进行数据操作。此外,前端可能使用了Thymeleaf、FreeMarker或其他模板引擎,与后端通过RESTful API交互。 总的来说,这个项目为学习者...

    MongoDB基础入门到高级进阶

    SpringDataMongoDB对MongoDB的操作 MongoDB的索引和操作 MongoDB的安全认证 4、主讲内容 基础入门部分 章节一:MongoDB相关概念 章节二:单机部署 章节三:基本常用命令 章节四:SpringDataMongoDB操作 高级进阶部分...

    mongoDB 4.0事务回滚的辛酸历程探究

    MongoDB 4.0引入了对ACID事务的支持,这是MongoDB发展的一个重大...开发者需要熟悉新的API和复制集的管理,以确保在实现事务处理时的稳定性和安全性。不断学习和理解这些新特性,对于提升MongoDB应用的质量至关重要。

    spring-mongo整合文档

    Spring Data MongoDB是Spring家族中的一员,旨在简化与MongoDB的集成,提供了一套丰富的API来操作MongoDB数据库。通过抽象出通用的CRUD(创建、读取、更新、删除)操作,开发者可以更专注于业务逻辑的编写,而无需...

    springboot结合mongodb

    在SpringBoot的`pom.xml`或`build.gradle`文件中,我们需要添加对应的MongoDB驱动和SpringDataMongoDB依赖。对于Maven用户,可以添加如下依赖: ```xml &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-...

    springboot配置多数据源的实例(MongoDB主从)

    SpringBoot配置多数据源-MongoDB主从实例 概述: 本文将向读者介绍如何在SpringBoot项目中配置多数据源,特别是MongoDB主从配置。通过本文,读者将了解到如何在项目中配置主从数据库,并且兼容其他数据库。...

    Java实践项目练起来(附源码)

    技术架构包括SpringBoot、SpringMVC、MyBatis、SpringDataMongoDB、SpringData、ElasticSearch、MongoDB、Spring Cloud、ElasticSearch、FastDFS、Nginx、支付等。 项目6:数字货币交易所项目 数字货币交易所项目...

Global site tag (gtag.js) - Google Analytics