欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mongodb的入门学习

程序员文章站 2024-03-08 15:59:16
...

    Mongodb是一个基于分布式文件存储的数据库,是一个介于关系数据库与非关系数据库之间的产品,是非关系数据库中功能最丰富,最像关系数据库的。mongo支持的数据结构非常松散,是类似json的bson,mongo选用bson作为其存储结构的一个重要原因就是因为bson的可遍历性,所以能更好的支持复杂的数据类型。mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现关系数据库中单表查询绝大部分的功能,而且还支持对数据建立索引。

mongodb的两种使用方式:

一.通过cmd窗口连接mongodb服务端

1----->配置环境变量,将mongodb\bin目录配置到path

2----->打开cmd窗口,进入到bin目录,测试mongodb服务端是否在运行:net start mongodb

3----->命令行输入mongo (客户端连接服务器)

出现以下窗口即连接成功:

mongodb的入门学习

通过命令使用mongodb:

    cd    /mongodb/bin

    ./mongo 127.0.0.1:27017/admin -u root -p root_123

 

    show dbs

    use itsm


二.通过RoboMongo图形化工具连接mongodb服务端


常用知识:

显式创建集合:db.createCollection("collectionName");//创建一个名为collectionName的集合,创建完成后会返回 {"ok",1} json串

注:mongo中支持js,可通过js操作实现批零处理,如:for(var i=0;i<1000;i++){db.collection2.insert({name:"xiaomu"+i,age:20+i});}

插入单个元素:db.集合名.insert({name:"xujia",age:18})

插入多个元素:db.集合名.insertMany([{name:"lehan",age:18},{name:"xudaha",age:78}])

。。。。更多语法详见官方文档!!学东西真的得好好琢磨官方文档,博客什么的只是为了提起你的兴趣


spring整合mongodb:

1.使用MongoTemplate的常用操作

使用spring整合的话直接注入就可以了

@Autowried
private MongoTemplate mongoTemplate

操作时常用的两个方法是Query和Criteria     (核心代码如下)

Query query = new Query();

Criteria c = new Criteria().andOperator(Criteria.where("tenantId").is(tenantId),

                                        Criteria.where("modelId").is(modelId));

PageRequest pageRequest = new PageRequest(pageNum - 1, pageSize, sortRule ? Sort.Direction.ASC : Sort.Direction.DESC, orderBy);

query.addCriteria(c).with(pageRequest);

mongoTemplate.find(query, 实体类.class);

2.MongoRepository

以前是单单继承PagingAndSortingRepository类,现在可以额外继承一个新类querybyexampleexecutor,这个新特性特别实用!!详情见如下链接:https://blog.csdn.net/zhao_tuo/article/details/78604324