#35 springboot: external read - @Value
This commit is contained in:
@@ -1,11 +1,13 @@
|
|||||||
package hello;
|
package hello;
|
||||||
|
|
||||||
import hello.config.MyDataSourceEnvConfig;
|
import hello.config.MyDataSourceEnvConfig;
|
||||||
|
import hello.config.MyDataSourceValueConfig;
|
||||||
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.SpringApplication;
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||||
import org.springframework.context.annotation.Import;
|
import org.springframework.context.annotation.Import;
|
||||||
|
|
||||||
@Import(MyDataSourceEnvConfig.class)
|
//@Import(MyDataSourceEnvConfig.class)
|
||||||
|
@Import(MyDataSourceValueConfig.class)
|
||||||
@SpringBootApplication(scanBasePackages = "hello.datasource")
|
@SpringBootApplication(scanBasePackages = "hello.datasource")
|
||||||
public class ExternalReadApplication {
|
public class ExternalReadApplication {
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,45 @@
|
|||||||
|
package hello.config;
|
||||||
|
|
||||||
|
import hello.datasource.MyDataSource;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import java.time.Duration;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@Configuration
|
||||||
|
public class MyDataSourceValueConfig {
|
||||||
|
|
||||||
|
@Value("${my.datasource.url}")
|
||||||
|
private String url;
|
||||||
|
@Value("${my.datasource.username}")
|
||||||
|
private String username;
|
||||||
|
@Value("${my.datasource.password}")
|
||||||
|
private String password;
|
||||||
|
@Value("${my.datasource.etc.max-connection:2}")
|
||||||
|
private int maxConnection;
|
||||||
|
@Value("${my.datasource.etc.timeout}")
|
||||||
|
private Duration timeout;
|
||||||
|
@Value("${my.datasource.etc.options}")
|
||||||
|
private List<String> options;
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public MyDataSource myDataSource1() {
|
||||||
|
return new MyDataSource(url,username, password, maxConnection, timeout, options);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public MyDataSource myDataSource2(
|
||||||
|
@Value("${my.datasource.url}") String url,
|
||||||
|
@Value("${my.datasource.username}") String username,
|
||||||
|
@Value("${my.datasource.password}") String password,
|
||||||
|
@Value("${my.datasource.etc.max-connection:2}") int maxConnection,
|
||||||
|
@Value("${my.datasource.etc.timeout}") Duration timeout,
|
||||||
|
@Value("${my.datasource.etc.options}") List<String> options
|
||||||
|
) {
|
||||||
|
return new MyDataSource(url,username, password, maxConnection, timeout, options);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user