2016-10-10 75 views
0

在我的代碼裏面配置MongoClientOptions感覺很奇怪,例如options.socketTimeout(30000);,我必須重新編譯才能更改生產環境中的設置。我看不到任何好的方法通過構建器從XML或YAML文件加載配置。如何從文件加載Java Mongo驅動程序的MongoClientOptions?

我是否在文檔中缺少某些內容,或者是否有一個整潔的實現/代碼段可以分享?

回答

2

我不認爲驅動程序中有管理如何以及從哪裏獲取這些設置的任何內容。不知道這是司機的工作..我保留屬性文件與所需的芒戈設置,並做這樣的事情:

import org.apache.commons.configuration.PropertiesConfiguration; 
PropertiesConfiguration props = new PropertiesConfiguration(); 
props.load(fileName); 

MongoClientOptions copts = MongoClientOptions.builder() 
    .connectionsPerHost(props.getInt("connectionsPerHost", 100)) 
    .connectTimeout(props.getInt("connectTimeout", 10000)) 
    ... 
    .build(); 
相關問題