diff --git a/chatto/.gitignore b/chatto/.gitignore index a7ad434..1313399 100644 --- a/chatto/.gitignore +++ b/chatto/.gitignore @@ -32,7 +32,7 @@ build/ ../vscode/ node_modules -config/ +/config/ bundle.js bundle.min.js src/main/javascript/node/ \ No newline at end of file diff --git a/chatto/src/main/java/org/ros/chatto/config/DataSourceConfig.java b/chatto/src/main/java/org/ros/chatto/config/DataSourceConfig.java new file mode 100644 index 0000000..9354e5d --- /dev/null +++ b/chatto/src/main/java/org/ros/chatto/config/DataSourceConfig.java @@ -0,0 +1,47 @@ +package org.ros.chatto.config; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.jdbc.DataSourceBuilder; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.stereotype.Component; + +import lombok.Getter; +import lombok.Setter; +import lombok.extern.slf4j.Slf4j; + +@Configuration +@Component + +// @ConfigurationProperties(prefix = "chatto.datasource") +@Getter +@Setter +@Slf4j +public class DataSourceConfig { + + // jdbc:mysql://localhost:3306/chatto_db?useSSL=false + private final String DATASOURCE_URL = "jdbc:mysql://localhost:3306/%s?useSSL=false"; + + private final String username; + private final String password; + private final String databaseName; + + public DataSourceConfig(@Value("${chatto.datasource.username}") String username, + @Value("${chatto.datasource.password}") String password, + @Value("${chatto.datasource.database-name}") String databaseName) { + this.username = username; + this.password = password; + this.databaseName = databaseName; + } + + @Bean + public DataSource getDataSource() { + final DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create(); + dataSourceBuilder.url(String.format(DATASOURCE_URL, databaseName)); + dataSourceBuilder.username(username); + dataSourceBuilder.password(password); + return dataSourceBuilder.build(); + } +} \ No newline at end of file