SpringBoot入门-MongoDB(五)

对着背影说爱祢 提交于 2019-12-09 16:57:01

安装MongoDB

安装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));
    }
}

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!