diff --git a/pom.xml b/pom.xml index ba5c05be19..bac17e7b35 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.alibaba druid 0.2.4-SNAPSHOT - + jar druid An JDBC datasource implementation. @@ -56,7 +56,7 @@ szujobs@hotmail.com - + https://wenshao@github.com/AlibabaTech/druid.git scm:git:https://wenshao@github.com/AlibabaTech/druid.git @@ -66,7 +66,7 @@ Alibaba Group http://code.alibabatech.com/ - + Apache 2 @@ -75,7 +75,7 @@ A business-friendly OSS license - + Jira http://code.alibabatech.com/jira/browse/DRUID @@ -126,17 +126,17 @@ true - + maven-javadoc-plugin - - attach-javadoc - - jar - - - + + attach-javadoc + + jar + + + public UTF-8 @@ -147,7 +147,7 @@ - + maven-gpg-plugin @@ -160,7 +160,7 @@ - + @@ -251,14 +251,8 @@ 9.1-901-1.jdbc4 test - + com.oracle @@ -317,7 +311,7 @@ 0.7.1-rc2 test - + proxool proxool @@ -330,19 +324,26 @@ 0.9.1 test - + c3p0 c3p0 0.9.1.2 test - + org.apache.ibatis ibatis-sqlmap 2.3.4.726 test + + + com.h2database + h2 + 1.3.167 + test + diff --git a/src/main/java/com/alibaba/druid/mock/handler/MySqlMockExecuteHandlerImpl.java b/src/main/java/com/alibaba/druid/mock/handler/MySqlMockExecuteHandlerImpl.java index 38e5f52e16..03d27b5121 100644 --- a/src/main/java/com/alibaba/druid/mock/handler/MySqlMockExecuteHandlerImpl.java +++ b/src/main/java/com/alibaba/druid/mock/handler/MySqlMockExecuteHandlerImpl.java @@ -102,7 +102,6 @@ public class MySqlMockExecuteHandlerImpl implements MockExecuteHandler { return rs; } - @SuppressWarnings("resource") public ResultSet executeQueryFromDual(MockStatement statement, SQLSelectQueryBlock query) throws SQLException { MockResultSet rs = new MockResultSet(statement); MockResultSetMetaData metaData = rs.getMockMetaData(); diff --git a/src/main/java/com/alibaba/druid/util/JdbcUtils.java b/src/main/java/com/alibaba/druid/util/JdbcUtils.java index c37d7485fd..4f3ed9bd4b 100644 --- a/src/main/java/com/alibaba/druid/util/JdbcUtils.java +++ b/src/main/java/com/alibaba/druid/util/JdbcUtils.java @@ -62,10 +62,12 @@ public final class JdbcUtils { public static final String MYSQL = "mysql"; public static final String DERBY = "derby"; - + public static final String HBASE = "hbase"; - - public static final String HIVE = "hive"; + + public static final String HIVE = "hive"; + + public static final String H2 = "h2"; private final static Log LOG = LogFactory.getLog(JdbcUtils.class); @@ -445,7 +447,7 @@ public final class JdbcUtils { } else if (rawUrl.startsWith("jdbc:ingres:")) { return "ingres"; } else if (rawUrl.startsWith("jdbc:h2:")) { - return "h2"; + return H2; } else if (rawUrl.startsWith("jdbc:mckoi:")) { return "mckoi"; } else if (rawUrl.startsWith("jdbc:cloudscape:")) { diff --git a/src/test/java/com/alibaba/druid/benckmark/pool/Case0.java b/src/test/java/com/alibaba/druid/benckmark/pool/Case0.java index a30604d790..6d9009ce79 100644 --- a/src/test/java/com/alibaba/druid/benckmark/pool/Case0.java +++ b/src/test/java/com/alibaba/druid/benckmark/pool/Case0.java @@ -37,7 +37,7 @@ public class Case0 extends TestCase { private String user; private String password; private String driverClass; - private int initialSize = 10; + private int initialSize = 1; private int minIdle = 3; private int maxIdle = 8; private int maxActive = 8; diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestH2.java b/src/test/java/com/alibaba/druid/bvt/pool/TestH2.java new file mode 100644 index 0000000000..98b8a73942 --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestH2.java @@ -0,0 +1,50 @@ +package com.alibaba.druid.bvt.pool; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; + +import junit.framework.Assert; +import junit.framework.TestCase; + +import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.util.JdbcUtils; + +public class TestH2 extends TestCase { + + private DruidDataSource dataSource; + + protected void setUp() throws Exception { + dataSource = new DruidDataSource(); + dataSource.setUrl("jdbc:h2:mem:"); + dataSource.setPoolPreparedStatements(true); + dataSource.setMaxOpenPreparedStatements(10); + + dataSource.init(); + } + + protected void tearDown() throws Exception { + JdbcUtils.close(dataSource); + } + + public void test_h2() throws Exception { + Assert.assertSame(JdbcUtils.H2, dataSource.getDbType()); + + Connection conn = dataSource.getConnection(); + + PreparedStatement stmt = conn.prepareStatement("SELECT ?"); + + stmt.setString(1, "xxxx"); + + ResultSet rs = stmt.executeQuery(); + + rs.next(); + Assert.assertEquals("xxxx", rs.getString(1)); + + rs.close(); + + stmt.close(); + + conn.close(); + } +} diff --git a/src/test/java/com/alibaba/druid/bvt/sql/oracle/CallTest.java b/src/test/java/com/alibaba/druid/bvt/sql/oracle/CallTest.java index eea827b276..c9b7109ac0 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/oracle/CallTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/oracle/CallTest.java @@ -26,7 +26,7 @@ import com.alibaba.druid.sql.dialect.oracle.visitor.OracleOutputVisitor; public class CallTest extends TestCase { public void test_select() throws Exception { - String sql = "CALL test(1)"; + String sql = "call dbms_session.set_identifier('nfs_special_syncview')"; OracleStatementParser parser = new OracleStatementParser(sql); List statementList = parser.parseStatementList();