From 70352665a63d66e2de243cf6a88b7d10f6480e44 Mon Sep 17 00:00:00 2001 From: wenshao Date: Sun, 23 Dec 2012 16:40:42 +0800 Subject: [PATCH] improve hibernate support --- .../hibernate/DruidConnectionProvider.java | 4 ++ .../DruidConnectionProviderTest.java | 37 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 src/test/java/com/alibaba/druid/bvt/support/hibernate/DruidConnectionProviderTest.java 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()); + } +}