首页 > 解决方案 > Spring 嵌入式 Mongo DB

问题描述

我有一个带有 Spring Boot 和 Embedded Mongo DB 的项目,我也想查找已存储在那里的数据。我如何按照本教程进行操作https://springframework.guru/spring-boot-with-embedded-mongodb/

一切正常,除了我无法使用这个 mongo-express 连接到嵌入式数据库?设置了哪个密码和用户名?我如何连接到本地主机嵌入式数据库???使用本教程后?

标签: springmongodbembedded-database

解决方案


为了在您的测试中使用 EmbeddedMongo,必须在 application.properties 中设置此属性。

spring.data.mongodb.uri=mongodb://localhost/test

您可以测试向 SpringBootMongodbApplicationTests.java 添加测试方法,如下所示。

package guru.springframework;

import guru.springframework.domain.Product;
import guru.springframework.repositories.ProductRepository;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import java.math.BigDecimal;

@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringBootMongodbApplicationTests {

    @Autowired
    private ProductRepository productRepository;

    @Test
    public void contextLoads() {

    }

    @Test
    public void testMongoDbRepository(){
        Product product = new Product();
        product.setDescription("DESC");
        product.setImageUrl("test.png");
        product.setPrice( BigDecimal.valueOf(1500) );
        productRepository.save(product);

        long count = productRepository.count();
        Assert.assertEquals( 1, count );
        productRepository.deleteAll();
    }
}

推荐阅读