diff --git a/src/main/java/com/alibaba/druid/support/hibernate/DruidConnectionProvider.java b/src/main/java/com/alibaba/druid/support/hibernate/DruidConnectionProvider.java index b12086a264..a543a26701 100644 --- a/src/main/java/com/alibaba/druid/support/hibernate/DruidConnectionProvider.java +++ b/src/main/java/com/alibaba/druid/support/hibernate/DruidConnectionProvider.java @@ -32,6 +32,10 @@ public class DruidConnectionProvider implements ConnectionProvider, Configurable private DruidDataSource dataSource; + public DruidConnectionProvider(){ + dataSource = new DruidDataSource(); + } + @SuppressWarnings("rawtypes") @Override public boolean isUnwrappableAs(Class unwrapType) { diff --git a/src/test/java/com/alibaba/druid/bvt/support/hibernate/DruidConnectionProviderTest.java b/src/test/java/com/alibaba/druid/bvt/support/hibernate/DruidConnectionProviderTest.java new file mode 100644 index 0000000000..bccfc3d0b4 --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/support/hibernate/DruidConnectionProviderTest.java @@ -0,0 +1,37 @@ +package com.alibaba.druid.bvt.support.hibernate; + +import java.sql.Connection; +import java.util.HashMap; +import java.util.Map; + +import junit.framework.TestCase; + +import org.junit.Assert; + +import com.alibaba.druid.support.hibernate.DruidConnectionProvider; + + +public class DruidConnectionProviderTest extends TestCase { + private DruidConnectionProvider provider; + + protected void setUp() throws Exception { + provider = new DruidConnectionProvider(); + + Map properties = new HashMap(); + properties.put("url", "jdbc:mock:xxx"); + + provider.configure(properties); + } + + protected void tearDown() throws Exception { + provider.stop(); + } + + public void test_hibernate() throws Exception { + Connection conn = provider.getConnection(); + Assert.assertFalse(conn.isClosed()); + + provider.closeConnection(conn); + Assert.assertTrue(conn.isClosed()); + } +}