基本API操作:
数据库操作:
1、查询数据库
show dbs 查询全部数据库 db 显示当前数据库
2、创建数据库
use test02 有则用无则创建(起码有一条数据才能显示)
3、删除数据库
删除test02数据库 切换(use test02)--->删除(db.dropDatabase())
集合:
1.创建集合:db.createCollection(name, options) name(新创建的集合名称) options(创建参数)
2.删除集合:db.collection.drop() db.student.drop() 删除student集合
插入:
插入命令:db.COLLECTION_NAME.insert(document)
每个文档默认以_id作为主键,主键默认类型为ObjectId(对象类型),mongodb会自动生成主键值。
db.student.insert({"name":"黑马程序员","age":10})
更新,命令:
db.collection.update(
<query>,
<update>,
<options>
)
query:查询条件,相当于sql语句的where
update:更新文档内容
options:选项
1、替换文档
将符合条件 "name":"北京黑马程序"的第一个文档替换为{"name":"北京黑马程序员","age":10}。
db.student.update({"name":"黑马程序员"},{"name":"北京黑马程序员","age":10})
2、$set修改器
使用$set修改器指定要更新的key,key不存在则创建,存在则更新。
将符合条件 "name":"北京黑马程序"的所有文档更新name和age的值。
db.student.update({"name":"黑马程序员"},{$set:{"name":"北京黑马程序员","age":10}},{multi:true})
multi:false表示更新第一个匹配的文档,true表示更新所有匹配的文档。
删除,命令:
db.student.remove(
<query>
)query:删除条件,相当于sql语句中的where
1、删除所有文档
db.student.remove({})
2.删除符合条件的文档
db.student.remove({"name":"黑马程序员"})
查询,命令:
db.collection.find(
query,
projection
)query:查询条件,可不填
projection:投影查询key,可不填
1、 查询全部:db.student.find()
2、查询符合条件的记录:db.student.find({"name":"黑马程序员"})
3、投影查询(只显示name和age两个key,_id主键不显示。):
db.student.find({"name":"黑马程序员"}, {name:1,age:1,_id:0})
用户:
1.创建用户:
创建root用户,角色为root
use admin db.createUser(
{
user:"root", pwd:"root",
roles:[{role:"root",db:"admin"}]
}
)
2.查询用户:
查询当前库下的所有用户:show users
3.删除用户:
语法格式:db.dropUser("用户名") 例子:删除root1用户 db.dropUser("root1")
4.修改用户,语法:
db.updateUser(
"<username>",
{ customData : { <any information> },
roles : [ { role: "<role>",
db: "<database>" } | "<role>", ... ],
pwd: "<cleartext password>" },
writeConcern: { <write concern> })
修改root用户的角色为readWriteAnyDatabase
use admin db.updateUser(
"root",
{roles:[{role:"readWriteAnyDatabase",db:"admin"}]
})
5.修改密码
语法:db.changeUserPassword("username","newPasswd")
修改root用户的密码为123:
-- use admin db.changeUserPassword("root","123")
springBoot整合mongoDB:
步骤一:搭建基础工程
步骤二:引入依赖
步骤三:添加配置
CRUD操作
1.基于MongoTemplate 开发CRUD:
2.基于MongoRepository开发CRUD: