MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मोंगो उत्पादन और परीक्षण डेटाबेस के बीच स्विच करें - जावा स्प्रिंग बूट

व्यक्तिगत रूप से मैं परीक्षण के लिए एक एम्बेडेड डेटाबेस का उपयोग करना पसंद करता हूं। आप FakeMongo का उपयोग कर सकते हैं

package com.backend.configuration;

import com.github.fakemongo.Fongo;
import com.mongodb.Mongo;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.config.AbstractMongoConfiguration;
import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;

@Configuration
@EnableMongoRepositories(basePackages = "com.backend.repository")
public class MongoConfiguration extends AbstractMongoConfiguration {

  private static final String DB_NAME = "test";

  @Override
  protected String getDatabaseName() {
    return DB_NAME;
  }

  @Override
  @Bean
  public Mongo mongo() {
    return new Fongo(getDatabaseName()).getMongo();
  }

  @Override
  protected String getMappingBasePackage() {
    return "com.backend.domain";
  }
}

टेस्ट क्लास में:

package com.backend.repository;

import com.backend.configuration.MongoConfiguration;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = MongoConfiguration.class)
public class CustomerRepositoryTest {

}

विकास और उत्पादन जैसे अन्य प्रोफाइल के लिए, आप स्प्रिंग बूट प्रोफाइल का उपयोग कर सकते हैं (देखें doc ) या आप मावेन प्रोफाइल का उपयोग कर सकते हैं:application.properties . में यह गुण जोड़ें [email protected]@ फिर इसे pom.xml में परिभाषित करें प्रयुक्त प्रोफ़ाइल के अनुसार :

    <profile>
        <id>dev</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <mongo.host>localhost</mongo.host>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <mongo.host>mongo</mongo.host>
        </properties>
    </profile>


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Meteor.user() के विशिष्ट उप-समूह के लिए उल्का प्रतिक्रियाशील बनाएं

  2. एकाधिक csv फ़ाइलों के लिए Mongoexport

  3. मोंगो क्वेरी में आईएसओ तिथि को टाइमस्टैम्प में बदलें

  4. विंडोज 7 में mongoDB के लिए डिफ़ॉल्ट dbpath कैसे सेट करें?

  5. ObjCMongoDB में गैर-सीआरयूडी और गैर-मूल मोंगोडीबी कमांड कैसे करें?