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

एम्बेडेड मोंगोडब को एप्लिकेशन शटडाउन पर डेटा कैसे रखें?

अब यह संभव है देखें इसे .

अगला कोड इसे लागू करने के लिए मेरा समाधान दिखाता है।

public class MongoInMemory {
 private int port;
 private String host;
 private MongodProcess process = null;

 public MongoInMemory(int port, String host){
    this.port = port;
    this.host = host;
 }

 @PostConstruct
 public void init() throws IOException {
    Storage storage = new Storage(
            System.getProperty("user.home") + "/.ttraining-storage", null, 0);

    IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder()
            .defaults(Command.MongoD)
            .artifactStore(new ExtractedArtifactStoreBuilder()
                    .defaults(Command.MongoD)
                    .download(new DownloadConfigBuilder()
                            .defaultsForCommand(Command.MongoD).build())
                    .executableNaming(new UserTempNaming()))
            .build();

    IMongodConfig mongodConfig = new MongodConfigBuilder()
            .version(Version.Main.PRODUCTION)
            .net(new Net(host, port, false))
            .replication(storage)
            .build();

    MongodStarter runtime = MongodStarter.getInstance(runtimeConfig);
    process = runtime.prepare(mongodConfig).start();
 }

 @PreDestroy
 public void stop(){
    process.stop();
 }
}

कॉन्फ़िगरेशन क्लास में इसे बीन के रूप में परिभाषित करें

@Bean
public MongoInMemory mongoInMemory(
    @Value("${spring.data.mongodb.port}") int port,
    @Value("${spring.data.mongodb.host}")  String host) {
        return new MongoInMemory(port, host)
}

आखिरकार, अपने प्रवेश बिंदु में एम्बेडेड मोंगोडब ऑटोकॉन्फ़िगरेशन को हटा दें

@SpringBootApplication(exclude = EmbeddedMongoAutoConfiguration.class)

PS :निर्भरता से निकालें cz.jirutka.spring:embedmongo-spring

पीएसएस :स्प्रिंग-बूट 2.0.0 पर परीक्षण किया गया। रिलीज

PSSS :इसके अलावा आप application.properties में एक संपत्ति के रूप में पथ को परिभाषित कर सकते हैं और इसे कंस्ट्रक्टर में भी परिभाषित कर सकते हैं



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. php . में उपयोगकर्ता नाम के लिए mongodb में असंवेदनशील मामला खोजें

  2. नेवले के साथ क्वेरी और योग करें

  3. विभिन्न सर्वरों पर मोंगो डेटाबेस को सिंक्रनाइज़ करें

  4. mongoDB सिंटैक्स लिखना

  5. कैसे प्रोजेक्ट करें कि क्या फ़ील्ड मौजूद है