aboutsummaryrefslogtreecommitdiff
path: root/server-core/src/main/java/com/juick/configuration
diff options
context:
space:
mode:
authorGravatar Alexander Alexeev2016-11-13 21:21:45 +0700
committerGravatar Alexander Alexeev2016-11-13 21:21:45 +0700
commit6ba7eb5fe1384ec87cdd0031d185a9b26512a016 (patch)
tree1448ba6c8dda4302e3ad847cb085d49b8b054867 /server-core/src/main/java/com/juick/configuration
parentb75258ee5ed84510579050b5dba1edb904a09dfa (diff)
server core module
Diffstat (limited to 'server-core/src/main/java/com/juick/configuration')
-rw-r--r--server-core/src/main/java/com/juick/configuration/DataConfiguration.java55
1 files changed, 55 insertions, 0 deletions
diff --git a/server-core/src/main/java/com/juick/configuration/DataConfiguration.java b/server-core/src/main/java/com/juick/configuration/DataConfiguration.java
new file mode 100644
index 00000000..f31dbcdb
--- /dev/null
+++ b/server-core/src/main/java/com/juick/configuration/DataConfiguration.java
@@ -0,0 +1,55 @@
+package com.juick.configuration;
+
+import org.apache.commons.dbcp2.BasicDataSource;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.PropertySource;
+import org.springframework.core.env.Environment;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.jdbc.datasource.DataSourceTransactionManager;
+import org.springframework.transaction.PlatformTransactionManager;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+import org.springframework.transaction.annotation.TransactionManagementConfigurer;
+
+import javax.annotation.Resource;
+import javax.sql.DataSource;
+
+/**
+ * Created by aalexeev on 11/11/16.
+ */
+@Configuration
+@EnableTransactionManagement
+@PropertySource(value = {"classpath:juick.conf"})
+public class DataConfiguration implements TransactionManagementConfigurer {
+ @Resource
+ private Environment env;
+
+ @Bean
+ public DataSource dataSource() {
+ BasicDataSource dataSource = new BasicDataSource();
+
+ dataSource.setDriverClassName(env.getProperty("datasource_driver", "com.mysql.jdbc.Driver"));
+ dataSource.setUrl(env.getProperty("datasource_url"));
+ dataSource.setUsername(env.getProperty("datasource_user", ""));
+ dataSource.setPassword(env.getProperty("datasource_password", ""));
+
+ dataSource.setValidationQuery("select 1");
+
+ return dataSource;
+ }
+
+ @Bean
+ public PlatformTransactionManager transactionManager() {
+ return new DataSourceTransactionManager(dataSource());
+ }
+
+ @Override
+ public PlatformTransactionManager annotationDrivenTransactionManager() {
+ return transactionManager();
+ }
+
+ @Bean
+ public JdbcTemplate jdbcTemplate() {
+ return new JdbcTemplate(dataSource());
+ }
+}