2015-12-05 17 views
0

當前我正在使用Amzone EC2來託管我的mongo數據庫,下面是在java中使用java mongodb驅動程序的MongoCongig文件的代碼,它工作正常。如何使用java mongodb驅動程序,java配置(不是xml配置)配置連接到MongoLab上的mongo數據庫?

@Configuration 
@EnableMongoRepositories 
public class MongoConfig extends AbstractMongoConfiguration 
{ 

    @Value("my_amazone_ec2_host") 
    private String host; 

    @Value("27017") 
    private Integer port; 

    @Value("my_database_name") 
    private String database; 

    @Value("database_admin") 
    private String username; 

    @Value("admin_pass") 
    private String password; 

    @Override 
    public String getDatabaseName() 
    { 
     return database; 
    } 

    @Override 
    @Bean 
    public Mongo mongo() throws Exception 
    { 
     return new MongoClient(
       singletonList(new ServerAddress(host, port)), 
       singletonList(MongoCredential.createCredential(username, 
         database, password.toCharArray()))); 
    } 
} 

現在我想用MongoLab主辦我的數據庫和MongoLab提供URI連接到Mongo的數據庫是這樣的:

mongodb://<dbuser>:<dbpassword>@ser_num.mongolab.com:port/database_name 

我想修改我的主機名與此URI,但沒有成功。任何人都可以幫我配置這個文件? 我只使用java配置,而不是XML配置; MongoDB的版本3

回答

0

我只是找到了解決辦法由MongoLab URI更換相關信息:

@Value("ser_num.mongolab.com") 
private String host; 

@Value("port") 
private Integer port; 
相關問題