@Bean(destroyMethod = "close") public DataSource dataSource() { String dbUrl, username, password; List<String> activeProfiles = Arrays.asList(environment.getActiveProfiles()); if (activeProfiles.contains("production")) { URI dbUri; try { dbUri = new URI(datasourcePropertyResolver.getProperty("heroku-uri")); } catch (URISyntaxException e) { throw new ApplicationContextException( "Heroku database connection pool is not configured correctly"); } dbUrl = "jdbc:postgresql://" + dbUri.getHost() + ":" + dbUri.getPort() + dbUri.getPath(); username = dbUri.getUserInfo().split(":")[0]; password = dbUri.getUserInfo().split(":")[1]; } else { dbUrl = datasourcePropertyResolver.getProperty("url"); username = datasourcePropertyResolver.getProperty("username"); password = datasourcePropertyResolver.getProperty("password"); } DataSource dataSource = new DataSource(); dataSource.setDriverClassName(datasourcePropertyResolver.getProperty("driver-class-name")); dataSource.setUrl(dbUrl); dataSource.setUsername(username); dataSource.setPassword(password); return dataSource; }
@Bean public DataSource getDefaultDataSource() { DataSource dataSource = new DataSource(); dataSource.setUrl(env.getProperty("jdbc.url")); dataSource.setUsername(env.getProperty("jdbc.user")); dataSource.setPassword(env.getProperty("jdbc.password")); dataSource.setDriverClassName(env.getProperty("jdbc.driverClassName")); dataSource.setInitialSize(Integer.parseInt(env.getProperty("jdbc.initialSize"))); dataSource.setMaxActive(Integer.parseInt(env.getProperty("jdbc.maxActive"))); dataSource.setValidationQuery(env.getProperty("jdbc.validationQuery")); dataSource.setMaxIdle(Integer.parseInt(env.getProperty("jdbc.maxIdle"))); dataSource.setMinIdle(Integer.parseInt(env.getProperty("jdbc.minIdle"))); dataSource.setMaxWait(Integer.parseInt(env.getProperty("jdbc.maxWait"))); dataSource.setTestOnBorrow(Boolean.parseBoolean(env.getProperty("jdbc.testOnBorrow"))); dataSource.setTestOnReturn(Boolean.parseBoolean(env.getProperty("jdbc.testOnReturn"))); dataSource.setTestWhileIdle(Boolean.parseBoolean(env.getProperty("jdbc.testWhileIdle"))); dataSource.setTimeBetweenEvictionRunsMillis( Integer.parseInt(env.getProperty("jdbc.timeBetweenEvictionRunsMillis"))); dataSource.setNumTestsPerEvictionRun( Integer.parseInt(env.getProperty("jdbc.numTestsPerEvictionRun"))); dataSource.setMinEvictableIdleTimeMillis( Integer.parseInt(env.getProperty("jdbc.minEvictableIdleTimeMillis"))); dataSource.setRemoveAbandonedTimeout( Integer.parseInt(env.getProperty("jdbc.removeAbandonedTimeout"))); dataSource.setRemoveAbandoned(Boolean.parseBoolean(env.getProperty("jdbc.removeAbandoned"))); dataSource.setLogAbandoned(Boolean.parseBoolean(env.getProperty("jdbc.logAbandoned"))); return dataSource; }
@Bean public DataSource datasource() { org.apache.tomcat.jdbc.pool.DataSource ds = new org.apache.tomcat.jdbc.pool.DataSource(); ds.setDriverClassName(databaseDriverClassName); ds.setUrl(datasourceUrl); ds.setUsername(databaseUsername); ds.setPassword(databasePassword); return ds; }
@SuppressWarnings("unused") private static Connection createTomcatJdbcPoolWrappedConnection() throws SQLException { // set up database DataSource ds = new DataSource(); ds.setDriverClassName("org.hsqldb.jdbc.JDBCDriver"); ds.setUrl("jdbc:hsqldb:mem:test"); ds.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.StatementDecoratorInterceptor"); Connection connection = ds.getConnection(); insertRecords(connection); return connection; }
public DataSource dataSource() { org.apache.tomcat.jdbc.pool.DataSource dataSource = new org.apache.tomcat.jdbc.pool.DataSource(); DatabaseConfiguration conf = DatabaseConfiguration.getInstance(); dataSource.setDriverClassName(conf.getDriverClassName()); dataSource.setUsername(conf.getUsername()); dataSource.setPassword(conf.getPassword()); dataSource.setUrl(conf.getUrl()); dataSource.setMaxActive(conf.getMaxActive()); dataSource.setMaxIdle(conf.getMaxIdle()); dataSource.setInitialSize(conf.getInitialSize()); dataSource.setTestWhileIdle(conf.isTestWhileIdle()); dataSource.setValidationQuery(conf.getValidationQuery()); dataSource.setValidationInterval(conf.getValidationInterval()); dataSource.setMaxAge(conf.getMaxAge()); return dataSource; }
@Bean(destroyMethod = "close") public DataSource dataSource() { DataSource dataSource = new DataSource(); dataSource.setUrl(url); dataSource.setDriverClassName(driverClassName); dataSource.setUsername(username); dataSource.setPassword(password); dataSource.setMaxActive(maxActive); dataSource.setMaxIdle(maxIdle); dataSource.setMinIdle(minIdle); dataSource.setMaxWait(maxWait); dataSource.setDefaultAutoCommit(defaultAutoCommit); dataSource.setValidationQuery(validationQuery); dataSource.setValidationInterval(validationInterval); dataSource.setTestWhileIdle(testWhileIdle); dataSource.setLogAbandoned(logAbandoned); dataSource.setRemoveAbandoned(removeAbandoned); dataSource.setRemoveAbandonedTimeout(removeAbandonedTimeout); return dataSource; }
@Bean public DataSource dataSource() { String[] userInfo = databaseUri.getUserInfo().split(":"); DataSource dataSource = new DataSource(); dataSource.setDriverClassName("org.postgresql.Driver"); dataSource.setUrl( String.format("jdbc:postgresql://%s%s", databaseUri.getHost(), databaseUri.getPath())); dataSource.setUsername(userInfo[0]); dataSource.setPassword(userInfo[1]); dataSource.setMinIdle(10); dataSource.setMaxActive(200); dataSource.setTestOnBorrow(true); dataSource.setTestOnReturn(true); dataSource.setTestWhileIdle(true); dataSource.setRemoveAbandoned(true); dataSource.setRemoveAbandonedTimeout(300); dataSource.setMaxWait(5000); dataSource.setValidationQuery("SELECT 1 FROM DUAL"); dataSource.setTimeBetweenEvictionRunsMillis(1800000); dataSource.setNumTestsPerEvictionRun(3); dataSource.setMinEvictableIdleTimeMillis(1800000); return dataSource; }