| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /**
- * Copyright (c) 2018 yiidata.com All rights reserved.
- *
- * http://yiidata.com
- *
- *
- */
- package com.yiidata.intergration.web.datasource.config;
- import com.alibaba.druid.pool.DruidDataSource;
- import com.yiidata.intergration.web.datasource.properties.DataSourceProperties;
- import java.sql.SQLException;
- /**
- * DruidDataSource
- *
- * @author zhenqin
- * @since 1.0.0
- */
- public class DynamicDataSourceFactory {
- public static DruidDataSource buildDruidDataSource(DataSourceProperties properties) {
- DruidDataSource druidDataSource = new DruidDataSource();
- druidDataSource.setDriverClassName(properties.getDriverClassName());
- druidDataSource.setUrl(properties.getUrl());
- druidDataSource.setUsername(properties.getUsername());
- druidDataSource.setPassword(properties.getPassword());
- druidDataSource.setInitialSize(properties.getInitialSize());
- druidDataSource.setMaxActive(properties.getMaxActive());
- druidDataSource.setMinIdle(properties.getMinIdle());
- druidDataSource.setMaxWait(properties.getMaxWait());
- druidDataSource.setTimeBetweenEvictionRunsMillis(properties.getTimeBetweenEvictionRunsMillis());
- druidDataSource.setMinEvictableIdleTimeMillis(properties.getMinEvictableIdleTimeMillis());
- druidDataSource.setMaxEvictableIdleTimeMillis(properties.getMaxEvictableIdleTimeMillis());
- druidDataSource.setValidationQuery(properties.getValidationQuery());
- druidDataSource.setValidationQueryTimeout(properties.getValidationQueryTimeout());
- druidDataSource.setTestOnBorrow(properties.isTestOnBorrow());
- druidDataSource.setTestOnReturn(properties.isTestOnReturn());
- druidDataSource.setPoolPreparedStatements(properties.isPoolPreparedStatements());
- druidDataSource.setMaxOpenPreparedStatements(properties.getMaxOpenPreparedStatements());
- druidDataSource.setSharePreparedStatements(properties.isSharePreparedStatements());
- try {
- druidDataSource.setFilters(properties.getFilters());
- druidDataSource.init();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return druidDataSource;
- }
- }
|