springboot测试环境中为什么会将mongodb的数据自动存储到test表中

今天学习进入到mongodb使用springdata支持进行简单的增删改查部分,在使用springboot进行测试的时候,有一个很神奇的问题,在程序中存入数据,但在mongodb中我指定的数据库中却找不到数据,在mongodb指定的数据库中存入数据,在程序中也查不到。但很神奇的是,在程序中能够正常存取,还不会报错。感觉简直郁闷到吐血的程度。代码如下:
springboot中的配置文件:

spring.data.mongodb.host=127.0.0.1
spring.data.mongo.repositories.enabled=true
spring.data.mongodb.port=27017
spring.data.mongodb.uri=mongodb\://127.0.0.1\:27017/permission #指定的数据库:permission

创建一个简单的实体:

package com.permission.bean.companyInfo;

import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

/**
 * Created by niuniu on 2017/4/17.
 * 公司表
 */
@Document//mongodb数据模型的标识
public class Company {

    @Id
    private String id; //公司ID

    private String name; //名称

    private String user; //创建人

    private String createTime; //创建时间

    private String address; //公司地址

    public Company() {
    }

    public Company(String id, String name, String user, String createTime, String address) {
        this.id = id;
        this.name = name;
        this.user = user;
        this.createTime = createTime;
        this.address = address;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getUser() {
        return user;
    }

    public void setUser(String user) {
        this.user = user;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Override
    public String toString() {
        return "Company{" +
                "id='" + id + '\'' +
                ", name='" + name + '\'' +
                ", user='" + user + '\'' +
                ", createTime='" + createTime + '\'' +
                ", address='" + address + '\'' +
                '}';
    }
}

创建一个springdata的处理接口:

package com.permission.repository;

import com.permission.bean.companyInfo.Company;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;

/**
 * Created by niuniu on 2017/4/17.
 */
@Repository
public interface CompanyRepository extends MongoRepository<Company,String>{
}

创建一个service:

package com.permission.service;

import com.permission.bean.companyInfo.Company;
import com.permission.repository.CompanyRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * Created by niuniu on 2017/4/17.
 */
@Service
public class CompanyService {

    @Autowired
    private CompanyRepository companyRepository;

    public Company createCompany(Company company){
        return companyRepository.save(company);
    }

    public Company findCompany(String id){
        Company c = companyRepository.findOne(id);
        return c;
    }

    public Company updateCompany(Company company){
        Company c = companyRepository.findOne(company.getId());
        c.setUser(company.getUser());
        return companyRepository.save(c);
    }
}

根据这个service编写简单的测试类:

package com.permission.service;

import com.permission.MypermissionApplication;
import com.permission.bean.companyInfo.Company;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import static org.junit.Assert.*;

/**
 * Created by niuniu on 2017/4/17.
 */

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = MypermissionApplication.class)
public class CompanyServiceTest {

    @Autowired
    private CompanyService companyService;

    @Test
    public void createCompany(){
        Company company = new Company("162","niuiufei","整天准备干啥","1323","gansha000");
        Company company1 = companyService.createCompany(company);
        System.out.println(company1.toString());
    }
}

执行,神奇的事情就发生了。
没有报错
然后到数据库中查询:竟然没有查到相应的数据
查了很多资料,纠结了很久,数据竟然神奇的消失了。但我找呀找,终于在test数据库中找到了我在程序中加入的数据。终于找到数据跑到哪里了
所以针对这个springboot测试中数据会自己添加到test库中的原理是什么就不太清楚了?会进一步研究,但希望对这个有研究的能够给出答案,在此多谢各位了。

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值