|
@ -0,0 +1,57 @@
|
|
|
package com.yihu.hos.broker.configurations;
|
|
|
|
|
|
import com.mongodb.Mongo;
|
|
|
import com.mongodb.MongoClient;
|
|
|
import com.mongodb.MongoCredential;
|
|
|
import com.mongodb.ServerAddress;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
import org.springframework.data.mongodb.config.AbstractMongoConfiguration;
|
|
|
|
|
|
import static java.util.Collections.singletonList;
|
|
|
|
|
|
/**
|
|
|
* @created Airhead 2016/7/27.
|
|
|
*/
|
|
|
@Configuration
|
|
|
public class MongoConfiguration extends AbstractMongoConfiguration {
|
|
|
// @Value("${spring.data.mongodb.uri}")
|
|
|
// private String uri;
|
|
|
|
|
|
@Value("${spring.data.mongodb.host}")
|
|
|
private String host;
|
|
|
@Value("${spring.data.mongodb.port}")
|
|
|
private int port;
|
|
|
@Value("${spring.data.mongodb.username}")
|
|
|
private String username;
|
|
|
@Value("${spring.data.mongodb.password}")
|
|
|
private String password;
|
|
|
@Value("${spring.data.mongodb.authenticationDatabase}")
|
|
|
private String authenticationDatabase;
|
|
|
@Value("${spring.data.mongodb.database}")
|
|
|
private String database;
|
|
|
|
|
|
@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, authenticationDatabase, password.toCharArray())));
|
|
|
}
|
|
|
|
|
|
private static MongoClient mongo;
|
|
|
|
|
|
public MongoClient mongoClient() throws Exception {
|
|
|
if(mongo == null) {
|
|
|
return new MongoClient(singletonList(new ServerAddress(host, port)),
|
|
|
singletonList(MongoCredential.createCredential(username, authenticationDatabase, password.toCharArray())));
|
|
|
}
|
|
|
return mongo;
|
|
|
}
|
|
|
|
|
|
}
|