Advertisement
videosambo

Untitled

Jul 24th, 2019
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.33 KB | None | 0 0
  1. package com.videosambo.motimaa.cellsystem.database;
  2.  
  3. import java.sql.SQLException;
  4.  
  5. import javax.sql.DataSource;
  6.  
  7. import com.mysql.jdbc.Connection;
  8. import com.videosambo.motimaa.cellsystem.Handler;
  9. import com.zaxxer.hikari.HikariConfig;
  10. import com.zaxxer.hikari.HikariDataSource;
  11.  
  12. public class DBConnectionPool {
  13.    
  14.     private Handler handler;
  15.     private static String url, user, pass;
  16.     private static DataSource dataSource;
  17.    
  18.     public DBConnectionPool(Handler handler, String url, String user, String pass) {
  19.         this.handler = handler;
  20.         this.url = url;
  21.         this.user = user;
  22.         this.pass = pass;
  23.     }
  24.    
  25.     public static DataSource getDataSource() {
  26.         if(dataSource == null) {
  27.                 HikariConfig config = new HikariConfig();
  28.                  
  29.         config.setJdbcUrl(url);
  30.         config.setUsername(pass);
  31.         config.setPassword(pass);
  32.  
  33.         config.setMaximumPoolSize(10);
  34.         config.setAutoCommit(false);
  35.         config.addDataSourceProperty("cachePrepStmts", "true");
  36.         config.addDataSourceProperty("prepStmtCacheSize", "250");
  37.         config.addDataSourceProperty("prepStmtCacheSqlLimit", "2048");
  38.          
  39.         dataSource = new HikariDataSource(config);
  40.         }
  41.         return dataSource;
  42.     }
  43.    
  44.     public static Connection getConnection() {
  45.         return (Connection) getDataSource();
  46.     }
  47.  
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement