|
@@ -1,9 +1,10 @@
|
|
|
package com.util.BasesSource;
|
|
package com.util.BasesSource;
|
|
|
|
|
|
|
|
|
|
+import com.alibaba.druid.pool.DruidDataSource;
|
|
|
|
|
+import com.alibaba.druid.pool.DruidDataSourceFactory;
|
|
|
import org.springframework.beans.MutablePropertyValues;
|
|
import org.springframework.beans.MutablePropertyValues;
|
|
|
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
|
|
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
|
|
|
import org.springframework.beans.factory.support.GenericBeanDefinition;
|
|
import org.springframework.beans.factory.support.GenericBeanDefinition;
|
|
|
-import org.springframework.boot.jdbc.DataSourceBuilder;
|
|
|
|
|
import org.springframework.context.EnvironmentAware;
|
|
import org.springframework.context.EnvironmentAware;
|
|
|
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
|
|
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
|
|
|
import org.springframework.core.env.Environment;
|
|
import org.springframework.core.env.Environment;
|
|
@@ -176,13 +177,17 @@ public class DynamicDataSourceRegister implements ImportBeanDefinitionRegistrar,
|
|
|
String url = String.valueOf(dataSourceMap.get("url"));
|
|
String url = String.valueOf(dataSourceMap.get("url"));
|
|
|
String username = String.valueOf(dataSourceMap.get("username"));
|
|
String username = String.valueOf(dataSourceMap.get("username"));
|
|
|
String password = String.valueOf(dataSourceMap.get("password"));
|
|
String password = String.valueOf(dataSourceMap.get("password"));
|
|
|
|
|
+ dataSourceMap.put("testWhileIdle", "true");
|
|
|
// 自定义DataSource配置
|
|
// 自定义DataSource配置
|
|
|
- DataSourceBuilder factory = DataSourceBuilder.create().driverClassName(driverClassName).url(url)
|
|
|
|
|
- .username(username).password(password).type(dataSourceType);
|
|
|
|
|
- return factory.build();
|
|
|
|
|
|
|
+// DataSourceBuilder factory = DataSourceBuilder.create().driverClassName(driverClassName).url(url)
|
|
|
|
|
+// .username(username).password(password).type(dataSourceType);
|
|
|
|
|
+ DruidDataSource factory = (DruidDataSource) DruidDataSourceFactory.createDataSource(dataSourceMap);
|
|
|
|
|
+ return factory;
|
|
|
} catch (ClassNotFoundException e) {
|
|
} catch (ClassNotFoundException e) {
|
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
|
- }
|
|
|
|
|
- return null;
|
|
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ e.printStackTrace();
|
|
|
|
|
+ }
|
|
|
|
|
+ return null;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|