MongoConfiguration.java 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package com.yihu.hos.broker.configurations;
  2. import com.mongodb.Mongo;
  3. import com.mongodb.MongoClient;
  4. import com.mongodb.MongoCredential;
  5. import com.mongodb.ServerAddress;
  6. import org.springframework.beans.factory.annotation.Value;
  7. import org.springframework.cloud.context.config.annotation.RefreshScope;
  8. import org.springframework.context.annotation.Bean;
  9. import org.springframework.context.annotation.Configuration;
  10. import org.springframework.data.mongodb.config.AbstractMongoConfiguration;
  11. import static java.util.Collections.singletonList;
  12. /**
  13. * @created Airhead 2016/7/27.
  14. */
  15. @RefreshScope
  16. @Configuration
  17. public class MongoConfiguration extends AbstractMongoConfiguration {
  18. // @Value("${spring.data.mongodb.uri}")
  19. // private String uri;
  20. @Value("${spring.data.mongodb.host}")
  21. private String host;
  22. @Value("${spring.data.mongodb.port}")
  23. private int port;
  24. @Value("${spring.data.mongodb.username}")
  25. private String username;
  26. @Value("${spring.data.mongodb.password}")
  27. private String password;
  28. @Value("${spring.data.mongodb.authenticationDatabase}")
  29. private String authenticationDatabase;
  30. @Value("${spring.data.mongodb.database}")
  31. private String database;
  32. @Override
  33. public String getDatabaseName() {
  34. return database;
  35. }
  36. @Bean
  37. public Mongo mongo() throws Exception {
  38. return new MongoClient(singletonList(new ServerAddress(host, port)),
  39. singletonList(MongoCredential.createCredential(username, authenticationDatabase, password.toCharArray())));
  40. }
  41. @Bean
  42. public MongoClient mongoClient() throws Exception {
  43. return new MongoClient(singletonList(new ServerAddress(host, port)),
  44. singletonList(MongoCredential.createCredential(username, authenticationDatabase, password.toCharArray())));
  45. }
  46. }