MongoDB命令及其MongoTemplate的混合讲解
前言
前面讲解了如何在springboot中集成mongodb,本文将讲解mongodb命令操作及其MongoTemplate的使用。穿插的目的在于不用先去寻找mongodb的命令又去寻找在java中的应用。本人就是从中过来的,所以本文旨在减少刚入门的同学少走一点弯路。
mongoDB所存储的数据以键值对的方式存储
注意事项
在创建数据库和创建集合没有讲解MongoTemplate的使用是因为:在创建数据库时只需要在配置文件中配置database路径即可。而在创建集合是只需要进行插入或者更新操作即可自动创建集合
注入mongotemplate
@Autowired
MongoTemplate mongoTemplate;
1. 创建数据库
use mydatabase
#插入数据
db.mydatabase({"name","我的数据库"})
show dbs
2. 创建集合
use mydatabase
db.createCollection("mycollection")
# 显示所有集合
show collections
3. 插入文档
命令方式:
db.mycollection.insert({
"key":"data",
"value":"数据",
"num": 1
})
java代码:
// 自定义对象
Data data = new Data("data","数据",1);
mongoTemplate.insert(data, "mycollection");
3. 更新文档
命令方式:
# 更新单行
db.mycollection.update({"key":"data"},{"$set":{"value":"更新数据"}})
# 更新多行
db.mycollection.update({"key":"data"},{"$set":{"value":"更新数据"}},{multi:true})
#如果数据结构是
{
"key":"key"
"data":{
"value":"数据"
}
}
db.mycollection.update({"key":"data"},{"$set":{"data.value":"更新数据"}})
java代码:
Update update = new Update();
update.set("value":"更新数据");
update.set("data.value":"更新数据");
// num自增加 前提 num 对应的必须为整形或者浮点型
update.inc("num", 1);
Query query = new Query(
Criteria.where("key").is("data")
);
mongoTemplate.updateFirst(query, update, "mycollecition");
4. 查询文档
命令方式
#普通查询
db.mycollection.find({"key":"data"})
#正则查询
db.mycollection.find({"key":{"$regex":"dat"}})
#大于等于 gte 小于等于 lte 大于 gt 小于 lt
db.mycollection.find({"num":{"$lt":1}})
MongoDB命令及其MongoTemplate的混合讲解的更多相关文章
- MongoDB命令行操作
本文专门介绍MongoDB的命令行操作.其实,这些操作在MongoDB官网提供的Quick Reference上都有,但是英文的,为了方便,这里将其稍微整理下,方便查阅. 这里用来做测试的是远端(10 ...
- MongoDb 命令查询所有数据库列表
原文:http://blog.csdn.net/huxu981598436/article/details/47216493 MongoDb 命令查询所有数据库列表 CODE: > show d ...
- [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)
linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...
- Mongodb命令 --- MongoDB基础用法(二)
Mongodb命令 数据库操作 创建数据库 MongoDB 创建数据库的语法格式如下: use DATABASE_NAME 如果数据库不存在,则创建数据库,否则切换到指定数据库. 删除数据库 Mong ...
- MongoDB命令学习
mongodb不像关系型数据库有很强大的GUI客户端,虽然mongodb也有,但功能和稳定性实在不敢恭维,所以操作mongodb我们大部分 都是用类似cmd命令的方式(mongodb称为shell操作 ...
- mongodb命令行group分组和java代码中group分组
group分组统计是数据库比较常用的功能,mongodb也不例外.不过相对于普通的增删改查,group操作就略微麻烦一些, 这里对group在shell中的操作.使用java原生代码操作以及集成spr ...
- MongoDB命令及SQL语法对比
mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(col ...
- mongodb新手入门,mongodb命令学习
下面来总结一下mongodb新手入门的常用命令吧.要是您是mongodb新手,可以看下. 1,show dbs 查询mongodb里面的数据库列表 如果想查看当前连接在哪个数据库下面,可以直接输入db ...
- mongoDB命令
. getLastError db.runCommand({getLastError:}) . buildInfo //返回mongoDB的服务器版本号和操作系统类型 db.runCommand({} ...
随机推荐
- 【Qt开发】StyleSheet使用总结
概述 转眼七年过去了,我是一个彻底拥抱过MFC的人,记得老大的一个需求要把按钮做成圆角,并添加背景颜色,做前端html的可能认为很简单,然而放到MFC上那可真的是很...很麻烦的,自定义类继承Butt ...
- hadoop开发环境
hadoop2.6伪分布式环境安装配置以及配置eclipse开发环境 Hadoop安装教程_单机/伪分布式配_Hadoop2.6.0/Ubuntu14.04 使用Eclipse编译运行MapReduc ...
- hadoop nameNode 无法启动
/************************************************************STARTUP_MSG: Starting NameNodeSTARTUP_M ...
- 如何用webgl(three.js)搭建不规则建筑模型,客流量热力图模拟
本节课主要讲解如何用webgl(three.js)搭建一个建筑模型,客流量热力图模拟 使用技术说明: 这里主要用到了three.js,echart.js以及一些其它的js 与css技术,利用webso ...
- linux和Android的Makefile和android.mk
1. makefile 1.1 gcc的参数 -Wall: 是打开警告开关, -O: 代表默认优化,可选:-O0不优化,-O1低级优化,-O2中级优化,-O3高级优化,-Os代码空间优化. -g ...
- Linux下如何查看版本信息(转)
Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等等,整个CPU信息一目了然. 1.# uname -a (Linux查看版本当前操作系统内核信息) L ...
- JavaScript中有对字符串编码的三个函数:escape,encodeURI,encodeURIComponent
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decod ...
- [转]Android Studio SQLite Database Multiple Tables Example
本文转自:http://instinctcoder.com/android-studio-sqlite-database-multiple-tables-example/ BY TAN WOON HO ...
- [转] .NET出现频率非常高的笔试题
又到了金三银四的跳槽季,许多朋友又开始跳槽了,这里我简单整理了一些出现频率比较高的.NET笔试题,希望对广大求职者有所帮助. 一..net基础 1. a=10,b=15,请在不使用第三方变量的情况下 ...
- 使用sql语句备份一张表
如何使用sql语句复制一张表? 方法一:第一步:先建一张新表,新表的结构与老表相等. create table newtable like oldtable; 第二步:将老表中的值复制到新标中. in ...