mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
DruidDataSource support clone
This commit is contained in:
@@ -1383,8 +1383,12 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat
|
||||
public JdbcDataSourceStat getDataSourceStat() {
|
||||
return dataSourceStat;
|
||||
}
|
||||
|
||||
public Object clone() throws CloneNotSupportedException {
|
||||
return cloneDruidDataSource();
|
||||
}
|
||||
|
||||
public DruidDataSource clone() {
|
||||
public DruidDataSource cloneDruidDataSource() {
|
||||
DruidDataSource x = new DruidDataSource();
|
||||
|
||||
cloneTo(x);
|
||||
|
||||
@@ -30,9 +30,17 @@ public class TestClone extends TestCase {
|
||||
Connection conn_1 = dataSource.getConnection();
|
||||
Connection conn_2 = dataSource.getConnection();
|
||||
|
||||
DruidDataSource clone = dataSource.clone();
|
||||
DruidDataSource clone = (DruidDataSource) dataSource.clone();
|
||||
clone.init();
|
||||
|
||||
Connection conn_3 = dataSource.getConnection();
|
||||
Connection conn_4 = dataSource.getConnection();
|
||||
Connection conn_5 = dataSource.getConnection();
|
||||
|
||||
conn_3.close();
|
||||
conn_4.close();
|
||||
conn_5.close();
|
||||
|
||||
dataSource.close();
|
||||
|
||||
Assert.assertEquals(dataSource.getUrl(), clone.getUrl());
|
||||
@@ -72,13 +80,13 @@ public class TestClone extends TestCase {
|
||||
// now is new dataSource;
|
||||
dataSource = clone;
|
||||
|
||||
Connection conn_3 = dataSource.getConnection();
|
||||
Connection conn_4 = dataSource.getConnection();
|
||||
Connection conn_5 = dataSource.getConnection();
|
||||
Connection conn_6 = dataSource.getConnection();
|
||||
Connection conn_7 = dataSource.getConnection();
|
||||
Connection conn_8 = dataSource.getConnection();
|
||||
|
||||
conn_3.close();
|
||||
conn_4.close();
|
||||
conn_5.close();
|
||||
conn_6.close();
|
||||
conn_7.close();
|
||||
conn_8.close();
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user