springboot 구성 다중 데이터 원본의 실례(MongoDB 주종)

지난 글을 본 동료들은 이미 알고 있다고 믿는다. 이 장에서 말하고자 하는 것은 바로 MongoDB 주종 설정이다.
이 글에서 배울 것은 프로젝트에서 주종 데이터베이스를 설정하고 다른 데이터베이스를 겸용하는 것입니다.이것들은 모두 블로거 프로젝트에서 필요하고 중요한 지식입니다.
자, 쓸데없는 말은 하지 말고 바로 주제에 들어가자.
1.pom 의존

<span style="white-space:pre">		</span><dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-mongodb</artifactId>
		</dependency>
2. 프로필 작성

## master mongo
master:
 mongodb:
 host: localhost
 port: 27017
 database: db_ops
## slave1 mongo
slave1:
 mongodb:
 host: localhost
 port: 27017
 database: db_note
## zookeeper 
3. 프로필 작성
mongodb 주종 설정에서 설정이 다릅니다
1. 상위 AbstractMongoConfigure 구성

public abstract class AbstractMongoConfigure {
 private String host, database;
 private int port;
 public MongoDbFactory mongoDbFactory() throws Exception {
  return new SimpleMongoDbFactory(new MongoClient(host, port), database);
 }
 /*
  * Factory method to create the MongoTemplate
  */
 abstract public MongoTemplate getMongoTemplate() throws Exception;
 public String getHost() {
  return host;
 }
 public void setHost(String host) {
  this.host = host;
 }
 public String getDatabase() {
  return database;
 }
 public void setDatabase(String database) {
  this.database = database;
 }
 public int getPort() {
  return port;
 }
 public void setPort(int port) {
  this.port = port;
 }
}
2. 기본 데이터베이스 구성

@Configuration
@EnableAutoConfiguration(exclude = {MongoAutoConfiguration.class, MongoDataAutoConfiguration.class})
@EnableMongoRepositories(basePackages = {"com.jx.ops.mapper.mongodb.ops"},mongoTemplateRef = "opsMongoTemplate")
@ComponentScan
@ConfigurationProperties(prefix = "ops.mongodb")
public class MongoMasterConfig extends AbstractMongoConfigure {
 @Override
 @Bean(name = "opsMongoTemplate")
 @Primary //<span style="color:#ff0000;"> </span>
 public MongoTemplate getMongoTemplate() throws Exception {
  return new MongoTemplate(mongoDbFactory());
 }
}
3. 데이터베이스에서 구성

@Configuration
@EnableAutoConfiguration(exclude = {MongoAutoConfiguration.class, MongoDataAutoConfiguration.class})
@EnableMongoRepositories(basePackages = {"com.jx.ops.mapper.mongodb.post"},mongoTemplateRef = "postMongoTemplate")
@ComponentScan
@ConfigurationProperties(prefix = "post.mongodb")
public class MongoPostConfig extends AbstractMongoConfigure {
 @Override
 @Bean(name = "postMongoTemplate")
 public MongoTemplate getMongoTemplate() throws Exception {
  return new MongoTemplate(mongoDbFactory());
 }
}
여기까지, 주종 데이터베이스에서도 설명이 끝났습니다. 만약에 모르거나 버그를 낸 동료가 있으면 저에게 메시지를 남겨 주세요.
이상의springboot에서 다중 데이터 원본을 설정한 실례(MongoDB 주종)는 바로 편집자가 여러분에게 공유한 모든 내용입니다. 여러분께 참고가 되고 저희를 많이 사랑해 주시기 바랍니다.

좋은 웹페이지 즐겨찾기