`
keny_keny
  • 浏览: 10702 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mongo

 
阅读更多
1.例子可以跑通,需要的环境是mongo2.2+spring+data的包。
Mongo的增加,修改,删除,模糊查询
Mongo是没有like查询的方式的 要进行模糊匹配只能借助于正则表达式



package org.spring.mongodb.example;

import static org.springframework.data.mongodb.core.query.Criteria.where;

import java.util.List;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoDbFactory;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;

import com.mongodb.Mongo;

public class MongoApp {
private static final Log log = LogFactory.getLog(MongoApp.class);
public static void main(String[] args) throws Exception {
MongoOperations mongoOps = new MongoTemplate(new SimpleMongoDbFactory(new Mongo(), "database"));

// Insert is used to initially store the object into the database.
mongoOps.insert(new Person("Joe", 34));
mongoOps.insert(new Person("陈林", 34));
mongoOps.insert(new Person("陈好", 34));
mongoOps.insert(new Person("Andi", 34));
mongoOps.insert(new Person("大本", 34));
mongoOps.insert(new Person("老A", 34));

// Update
mongoOps.updateFirst(new Query(where("name").is("Joe")), new Update().update("age", 29), Person.class);
Person p = mongoOps.findOne(new Query(where("name").is("Joe")), Person.class);
log.info("Updated: " + p);
// adding 5 years
mongoOps.updateFirst(new Query(where("name").is("Joe")), new Update().inc("age", 1), Person.class);
p = mongoOps.findOne(new Query(where("name").is("Joe")), Person.class);
mongoOps.updateFirst(new Query(where("name").is("Joe")), new Update().update("name", "chenjinlin"), Person.class);
p = mongoOps.findOne(new Query(where("name").is("chenjinlin")), Person.class);

List<Person> person = mongoOps.find(new Query(new Criteria(      "name").regex(".*?"+"陈"+".*")).limit(100), Person.class); 
log.info("like select: " + person);

person = mongoOps.find(new Query(new Criteria(      "name").regex(".*?"+"A"+".*")).limit(100), Person.class); 
log.info("like select: " + person);


// Delete
mongoOps.remove(p);
// Check that deletion worked
List<Person> people = mongoOps.findAll(Person.class);
log.info("Number of people = : " + people.size());
mongoOps.dropCollection(Person.class);
}

}
分享到:
评论

相关推荐

    阿里mongo同步工具mongo-shake

    阿里mongo同步工具mongo-shake正是为了解决这些问题而设计的。 Mongo-shake 是阿里巴巴开发的一款高效、稳定且易于使用的MongoDB数据迁移工具,主要用于实现MongoDB集群之间的数据同步。它支持全量数据迁移和增量...

    mongo-cxx-driver

    MongoDB的C++驱动,即`mongo-cxx-driver`,是一个关键组件,允许开发者使用C++语言与MongoDB数据库进行交互。MongoDB是一款流行的、基于文档的NoSQL数据库,而`mongo-cxx-driver`则是MongoDB官方支持的C++接口,它...

    mongo_plugin.zip

    "mongo_plugin.zip"这个压缩包就是为了解决这个问题,它包含了三个不同版本的MongoDB插件:0.12.0、0.12.1和0.12.2,即mongo4idea。 Mongo4idea是专为PyCharm设计的MongoDB数据库管理插件,它允许用户在PyCharm的...

    php_mongo.dll 5.4,5.5插件各个版本下载

    为了在PHP环境中与MongoDB进行交互,我们需要一个名为`php_mongo.dll`的扩展插件。这个插件是PHP与MongoDB数据库之间的桥梁,它允许开发者在PHP代码中直接操作MongoDB。 标题"php_mongo.dll 5.4,5.5插件各个版本...

    mongo-c-driver-1.14.0-x86.rar

    【MongoDB C Driver 1.14.0】--截止2019.6.26的最新版本 1、编译好的Mongodb C语言库,包含lib、dll、include,版本1.14.0,32位的 2、包含文件的清单: ......\mongo-c-driver\share\mongo-c-driver\uninstall.cmd

    mongoTemplate工具类Dao层方法封装.zip

    MongoTemplate是Spring Data MongoDB框架中的一个核心组件,用于在Java应用中方便地操作MongoDB数据库。这个资源包“mongoTemplate工具类Dao层方法封装.zip”显然提供了两种版本的MongoTemplate操作集合的代码示例,...

    docker-mongodb-shell:在Docker容器中安装mongo shell和工具的示例

    docker build --rm -t thelebster/mongo-shell-example .docker run -ti --rm --name mongo-shell-example -d thelebster/mongo-shell-exampledocker exec -it mongo-shell-example bashdocker run -ti --rm --name...

    mongo-scala-drive的使用demo

    在 Scala 中与 MongoDB 进行交互,通常我们会使用 `mongo-scala-driver`,而不是 `mongo-java-driver`,因为 Scala 驱动提供了更符合 Scala 语言特性的 API 设计。本示例将详细介绍如何使用 `mongo-scala-driver` ...

    mongoTemplate实现统计和分组

    "MongoDB 使用 MongoTemplate 实现统计和分组" MongoDB 是一个非常流行的 NoSQL 数据库,它可以存储大量的数据,但是有时候我们需要对这些数据进行分析和利用。在本文中,我们将介绍如何使用 MongoTemplate 实现...

    MongoVUE绿色版

    MongoVUE是一款专为Windows操作系统设计的MongoDB客户端工具,旨在提供一个直观且功能丰富的图形用户界面(GUI),使得数据库的管理和操作更为便捷。MongoDB是一种流行的开源、文档型的NoSQL数据库系统,广泛应用于...

    php_mongo-1.6.0-5.3-ts-vc9-x86

    标题 "php_mongo-1.6.0-5.3-ts-vc9-x86" 指的是一个特定版本的 PHP MongoDB 扩展,这个扩展是为 PHP 5.3 版本设计的,特别适用于线程安全(TS)且使用 Visual C++ 9 编译器编译的 32 位(x86)系统。在 PHP 开发中,...

    centos系统php 5.6对应的mongo.so下载及源码

    $ tar -zxvf mongo-1.6.12.tgz $ mv mongodb-mongo-1.6.12/ /usr/local/mongodb $ /usr/local/php/bin/phpize $ ./configure --with-php-config=/usr/local/php/bin/php-config $ make all -j 5 $ sudo make ...

    MongoVUE,MongoDB客户端

    MongoVUE是一款专为MongoDB数据库设计的图形用户界面(GUI)工具,它极大地简化了数据库的管理和操作过程。MongoDB是一种流行的NoSQL数据库系统,以其高性能、高可用性和灵活性而受到开发者的青睐。MongoVUE作为...

    Mongo学习文档参考手册

    .Mongo 学习文档参考手册 Mongo 是一个高性能、开源、无模式的文档型数据库,它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo 使用 C++ 开发,提供了以下功能: 1. 面向集合的存储:适合存储...

    MongoVUE-Installer

    MongoVUE是一款强大的MongoDB数据库管理系统,专为简化MongoDB的可视化操作而设计。它提供了一个直观的图形用户界面(GUI),使得数据库的管理和数据操作变得更加便捷,尤其适合那些不熟悉命令行界面或者希望提高...

    bugu-mongo

    《Bugu-Mongo 1.12:深入解析开源MongoDB框架》 MongoDB,作为一个高性能、开源、无模式的文档型数据库,近年来在IT行业中备受瞩目,尤其在大数据处理和分布式存储领域更是表现出色。Bugu-Mongo是基于MongoDB开发的...

    mongo-connector-2.11-2.3.0

    Mongo-Connector是一个强大的工具,用于将MongoDB的数据同步到其他数据存储系统,如Elasticsearch或Solr。在本案例中,我们关注的是版本2.3.0,它专为pyspark2.3.0和Scala2.11构建。这个版本确保了与特定Spark和...

    mongo-java-driver-3.2.2

    在"mongo-java-driver-3.2.2"这个版本中,我们探讨的是一个关键的中间件,它允许Java应用程序充分利用MongoDB的功能,包括数据存储、查询、更新以及删除操作。 MongoDB是一个流行的NoSQL数据库系统,以其灵活性、高...

    springMvc配置mongo数据库

    &lt;bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"&gt; &lt;constructor-arg name="mongo" ref="mongo" /&gt; ``` 有了MongoTemplate,我们就可以在服务类或DAO类中注入并使用它来...

    mongo-2.8.0jar包以及spring整合的jar包

    4. **MongoTemplate**:对于更复杂的查询和操作,可以使用MongoTemplate对象,它提供了对MongoDB的低级别访问。 5. **Spring Data的自动查询生成**:基于方法名,Spring Data能自动生成对应的查询,例如`findByXXX`...

Global site tag (gtag.js) - Google Analytics