SpringBoot入门-MongoDB(五)
2024-08-30 20:39:57
安装MongoDB
MongoDB用户、数据库相关命令操作
https://www.jianshu.com/p/237a0c5ad9fa
# 创建用户以及角色
use springboot-db
db.createUser({
user: 'ydd',
pwd: '123456',
roles:[{
role: 'root',
db: 'springboot-db'
}]
}) # 进行用户认证
use springboot-db
db.auth('ydd', '123456')
# 更新用户权限
db.updateUser("ydd",{roles:[ {role:"root",db:"springboot-db"} ]})
注:updateuser它是完全替换之前的值,如果要新增或添加roles而不是代替它
则使用方法: db.grantRolesToUser() 和 db.revokeRolesFromUser() //删除数据库 dbTest
db.dbTest.drop() show users // 查看当前库下的用户 db.dropUser('testadmin') // 删除用户 db.updateUser('admin', {pwd: '654321'}) // 修改用户密码 MongoDB 数据库默认角色 数据库用户角色:read、readWrite
数据库管理角色:dbAdmin、dbOwner、userAdmin
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
备份恢复角色:backup、restore
所有数据库角色: readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、
dbAdminAnyDatabase
超级用户角色:root
依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
接口
package com.vast.dao; import com.vast.entity.Account;
import org.springframework.data.mongodb.repository.MongoRepository; public interface AccountRepository extends MongoRepository<Account, Integer> {
public Account findByName(String name);
}
写一个接口,继承MongoRepository,这个接口有了几本的CURD的功能。如果你想自定义一些查询,比如根据firstName来查询,获取根据lastName来查询,只需要定义一个方法即可。注意firstName严格按照存入的mongodb的字段对应。在典型的java的应用程序,写这样一个接口的方法,需要自己实现,但是在springboot中,你只需要按照格式写一个接口名和对应的参数就可以了,因为springboot已经帮你实现了。
测试
package com.vast; import com.vast.dao.AccountRepository;
import com.vast.dao.IAccountMybatisDao;
import com.vast.entity.Account;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class)
@SpringBootTest(classes = ApplicationVastStart.class)
public class TestAccountService { @Autowired
private IAccountMybatisDao accountMybatisDao;
@Autowired
private AccountRepository accountRepository; @Test
public void TestSaveAccount(){
Account account = new Account();
account.setName("222");
account.setMoney(23.9);
//// accountMybatisDao.saveAccount(account);
// accountRepository.findByName("");
System.out.println(accountRepository.findAll());
// System.out.println(accountRepository.insert(account));
}
}
最新文章
- 使用Spring+Junit4.4进行测试(使用注解)
- List对象去重
- jsp内置对象作业2-留言簿
- DataTable to byte[]、DataTable to XML(string)
- HDU2050离散数学折线分割平面
- Android(java)学习笔记134:Handler用法总结 和 秒表案例
- java.lang.Exception: Socket bind failed: [730048] ?????????&#215;???(Э?&#233;/???????/???)????&#237;??
- win7安装omnetpp-4.6
- excel 下拉级联,重新选第一个,清空后一个已赋值,并且改变后一个下拉的内容。
- DJango_生命周期
- python3 购物车 增改查终极版~
- spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,guava限流,定时任务案例, 发邮件
- Win10系列:VC++调用自定义组件2
- Docker中Spring boot+VueJS+MongoDB的前后端分离哲学摔跤
- python之函数用法islower()
- memcache 与 redis 为web app 带来的性能提升
- ZooKeeper学习1---简单介绍
- c语言学习笔记.关键字.存储类型关键字等
- Chrome调试ECMAScript之断点debug技巧大全!
- 洛谷 P3233 [HNOI2014]世界树(虚树+dp)