aboutsummaryrefslogtreecommitdiff
path: root/juick-server-jdbc/src/main/java/com/juick/service/BaseJdbcService.java
diff options
context:
space:
mode:
Diffstat (limited to 'juick-server-jdbc/src/main/java/com/juick/service/BaseJdbcService.java')
-rw-r--r--juick-server-jdbc/src/main/java/com/juick/service/BaseJdbcService.java55
1 files changed, 55 insertions, 0 deletions
diff --git a/juick-server-jdbc/src/main/java/com/juick/service/BaseJdbcService.java b/juick-server-jdbc/src/main/java/com/juick/service/BaseJdbcService.java
new file mode 100644
index 00000000..e3784345
--- /dev/null
+++ b/juick-server-jdbc/src/main/java/com/juick/service/BaseJdbcService.java
@@ -0,0 +1,55 @@
+package com.juick.service;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
+import org.springframework.transaction.PlatformTransactionManager;
+import org.springframework.transaction.support.TransactionTemplate;
+import org.springframework.util.Assert;
+
+import javax.sql.DataSource;
+
+/**
+ * Created by aalexeev on 11/13/16.
+ */
+public abstract class BaseJdbcService {
+ protected final Logger logger = LoggerFactory.getLogger(getClass());
+
+ private final JdbcTemplate jdbcTemplate;
+ private final TransactionTemplate transactionTemplate;
+ private final NamedParameterJdbcTemplate namedParameterJdbcTemplate;
+
+
+ protected BaseJdbcService(JdbcTemplate jdbcTemplate, PlatformTransactionManager transactionManager) {
+ Assert.notNull(jdbcTemplate, "JdbcTemplate must be initialized");
+
+ this.jdbcTemplate = jdbcTemplate;
+ this.namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate);
+ this.transactionTemplate = (transactionManager == null) ?
+ null : new TransactionTemplate(transactionManager);
+
+ }
+
+ protected BaseJdbcService(DataSource dataSource, PlatformTransactionManager transactionManager) {
+ Assert.notNull(dataSource, "DataSource must be initialized");
+
+ this.jdbcTemplate = new JdbcTemplate(dataSource);
+ this.namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate);
+ this.transactionTemplate = (transactionManager == null) ?
+ null : new TransactionTemplate(transactionManager);
+
+ }
+
+ protected JdbcTemplate getJdbcTemplate() {
+ return jdbcTemplate;
+ }
+
+ protected NamedParameterJdbcTemplate getNamedParameterJdbcTemplate() {
+ return namedParameterJdbcTemplate;
+ }
+
+ protected TransactionTemplate getTransactionTemplate() {
+ return transactionTemplate;
+ }
+}