springboot使用MongoDB数据库

2019-07-20  本文已影响0人  就在附近

背景

项目中开始使用mongo数据库,需要快速连接使用mongo,当前操作只是读取,根据id读取,所以需要快速配置

好mongoDB,并且要方便操作使用,这里我用spring-boot-starter-data-mongodb来快速配置

依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
    <version>${springboot.version}</version>
</dependency>
<springboot.version>2.1.4.RELEASE</springboot.version>

配置

在配置文件application.xml里,如下

spring:
  data:
    mongodb:
      authentication-database: test
      uri: mongodb://username:password@localhost:8072/test

这里连接信息放在uri里,另外中单db配置如下

spring:
   data:
     mongodb:
       username: username
       password: password
       database: test
       port: 8072
       host: localhost
       authentication-database: test

集群方式配置如下,

spring:
  data:
    mongodb:
      authentication-database: test
      uri: mongodb://username:password@localhost:8072,localhost:8073/test

操作

这里使用MongoRepository方式进行操作,方便,常用的基本已经封装好,我们用员工表进行示例演示

员工实体,这里只需要@Id注解就行

@Data
public class Emp {

     @Id
    private String id;
    private String empName;

public interface EmpRepository extends MongoRepository<Emp, String> {
}

MongoRepository里封装了增删改查基本操作,具体的实现可查看源码。

目前项目中只用到了id in 操作,只是查询操作,数据的写入都是通过spark进行写入,单测用例,

@Autowired
private EmpRepository empRepository;
@Test
public void testSave(){
    Emp emp = new Emp();
    emp.setId("1");
    emp.setEmpName("test");
    empRepository.save(emp);
    List<String> ids = Arrays.asList("1");       
    Iterable<Emp> details = empRepository.findAllById(ids);
    
}
上一篇下一篇

猜你喜欢

热点阅读