`
cnsdl
  • 浏览: 1174 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

DBCP连接池测试用例(8月修正版)

阅读更多

WIN2000>>APACHE TOMCAT5.0.28(要求5.0及以上版本)>>SQL SERVER 2000
系统用的是SQL SERVER 库中的Northwind。采用第四类驱动,驱动类放到D:\testpool\WEB-INF\lib中。
保证TOMCAT和SQL SERVER正常运行。
[color=red][1]在%TOMCAT_HOME%\conf\Catalina\localhost\目录下建一个testPool.xml文件:

<?xml version='1.0' encoding='utf-8'?>
<Context docBase="D:/testpool" path="/testpool" privileged="true" workDir="work\Catalina\localhost\testpool">
  <Resource type="javax.sql.DataSource"  auth="Container"  name="jdbc/northwind"/> 
    <ResourceParams name="jdbc/northwind">
      <parameter>
        <name>maxWait</name>
        <value>5000</value>
      </parameter>
      <parameter>
        <name>maxActive</name>
        <value>4</value>
      </parameter>
      <parameter>
        <name>password</name>
        <value>12345</value>
      </parameter>
      <parameter>
        <name>url</name>
        <value>jdbc:microsoft:sqlserver://10.0.0.168:1433;databaseName=Northwind</value>
      </parameter>
      <parameter>
        <name>driverClassName</name>
        <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
      </parameter>
      <parameter>
        <name>maxIdle</name>
        <value>2</value>
      </parameter>
      <parameter>
        <name>username</name>
        <value>sa</value>
      </parameter>
    </ResourceParams>
</Context>
[2]在D:\testpool\WEB-INF\下面建立一个web.xml文件:
<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">
<!--ConnectionPool-->
<resource-ref>
<res-ref-name>jdbc/northwind</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
[3]在D:\testpool\下面建立测试文件index.jsp
<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page session="false" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>tetst connection pool</title>
<%
   out.println("我的测试开始");
   DataSource ds = null;

   try{
   InitialContext ctx=new InitialContext();   
   ds=(DataSource)ctx.lookup("java:comp/env/jdbc/northwind");
   Connection conn = ds.getConnection();
   Statement stmt = conn.createStatement();

   String strSql = " select * from Categories";
   ResultSet rs = stmt.executeQuery(strSql);
   while(rs.next()){
      out.println(rs.getString(1));                
     }
  out.println("我的测试结束");
   }
   catch(Exception ex){
       out.print("出现例外,信息是:"+ex.getMessage());
    ex.printStackTrace();
   }
%>
</head>
<body>
</body>
</html>
[4]补充:做配置时大体要搞清楚类似的几个问题,就是考虑WWW原则,要建或改什么文件(WHO),在那里做(WHERE),做什么(WHAT).与之对应的是:
WHO WHERE WHAT
testPool.xml %TOMCAT_HOME%\conf\Catalina\localhost\ 见第一步
web.xml(名字固定) D:\testpool\WEB-INF\web.xml 见第二步
index.jsp D:\testpool\index.jsp 见第三步
[5]如果使用hibernate,除作上面的外还需要更改hibernate.cfg.xml文件:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 2.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">

<!-- DO NOT EDIT: This is a generated file that is synchronized -->
<!-- by MyEclipse Hibernate tool integration.                   -->
<hibernate-configuration>

<session-factory>
<!-- properties
<property name="connection.username">sa</property>
<property name="connection.url">
jdbc:microsoft:sqlserver://10.0.0.168:1433;DataBaseName=cw_scene
</property>
<property name="dialect">
net.sf.hibernate.dialect.SQLServerDialect
</property>
<property name="connection.password">12345</property>
<property name="connection.driver_class">
com.microsoft.jdbc.sqlserver.SQLServerDriver
</property>
<property name="hibernate.jdbc.fetch_size">50</property>
<property name="hibernate.jdbc.batch_size">25</property>
-->
<!-- properties -->

<property name="connection.datasource">
java:comp/env/jdbc/testpool
</property>
<property name="dialect">
net.sf.hibernate.dialect.SQLServerDialect
</property>
<property name="hibernate.connection.provider_class">
net.sf.hibernate.connection.DatasourceConnectionProvider
</property>
<property name="hibernate.jdbc.fetch_size">50</property>
<property name="hibernate.jdbc.batch_size">25</property>

<!-- mapping files -->
<mapping resource="com/scenechina/table/Imgpos.hbm.xml" />

</session-factory>

</hibernate-configuration>
分享到:
评论

相关推荐

    DBCP,C3P0,Tomcat_JDBC 性能及稳定性测试代码

    在项目中的"src"目录可能包含测试用例的Java代码,而"lib"目录则包含了这些连接池库的依赖。测试代码可能使用了JUnit或其他测试框架,通过执行特定的查询、事务操作来模拟真实应用的负载,然后收集并分析结果,以便...

    dbcp1.4&pool1;.5.6

    标题中的"dbcp1.4&pool1.5.6"指的是Apache的两个著名数据库连接池组件:DBCP (Database Connection Pool) 1.4版本和POOL (Object Pooling) 1.5.6版本。Apache DBCP是Apache软件基金会开发的一个开源项目,它提供了一...

    连接池与Spring,Hibernate结合

    在实际开发中,我们通常会编写这样的测试用例来验证连接池的配置是否正确,数据源是否能正常获取和释放连接,以及Hibernate的相关配置是否生效。 总结来说,连接池、Spring和Hibernate的结合是现代Java Web应用的...

    java数据库操作类-连接池

    在Java中,可以使用开源库如C3P0、Apache DBCP或HikariCP来创建连接池。这些库提供了预配置的连接池管理类,但如果你需要自定义实现,`ConnectionPool`类可能包含初始化数据库连接、获取和释放连接以及关闭连接池的...

    java数据库连接池Druid

    Java数据库连接池(Database Connection Pool)是Java应用中用于管理数据库连接的重要组件,它提高了数据库操作的性能和...通过编写测试用例,我们可以验证Druid连接池的创建、使用、关闭以及监控等功能是否正常工作。

    commons-dbcp-1.2.1.zip

    - **testpool.jocl**:这是一个测试类,用于验证DBCP连接池的功能。它通常包含各种测试用例,以确保组件在不同场景下的正确工作。 - **org**:这个目录包含了所有相关的Java源代码,它们组织在org.apache.commons....

    commons-dbcp2-2.6.0.zip

    Apache Commons DBCP2是Java开发中的一个数据库连接池组件,版本为2.6.0。这个压缩包包含了与DBCP相关的多个jar文件,用于在Java应用中管理和复用数据库连接,提高系统的性能和效率。下面我们将详细探讨DBCP、Java...

    commons-dbcp-1.3-src.zip

    Apache Commons DBCP,全称为"Database Connection Pool",是Apache软件基金会开发的一个开源数据库连接池组件。在Java应用程序中,DBCP作为一个高效、稳定、成熟的数据库连接池解决方案,广泛应用于各种项目中,以...

    配置文件连接数据库和优化数据库的连接池

    当然,生产环境中应使用更高级的连接池实现,如C3P0、HikariCP或者Apache DBCP2,它们能更好地管理数据库连接,提高系统性能。 接下来,我们讨论数据库连接池的优化。连接池是管理数据库连接的一种技术,它可以减少...

    commons-dbcp-1.4-bin.zip

    Apache Commons DBCP,全称为"Database Connection Pool",是Apache软件基金会开发的一个开源数据库连接池组件。这个组件主要用于管理数据库连接,以提高应用程序的性能和效率。在Java应用程序中,尤其是在服务器端...

    数据库连接测试

    MyEclipse支持配置连接池,如C3P0、Apache DBCP或HikariCP,这些连接池组件可以帮助管理数据库连接的生命周期。 6. **异常处理和测试用例**:在开发过程中,还应编写测试用例来模拟各种异常情况,如网络中断、超时...

    spring配置datasource(dbcp方式)

    DBCP(Basic Database Connection Pool)是Apache提供的一款开源的数据库连接池实现,它为Java应用提供了高效的数据库连接管理。本实例工程将指导你如何在Spring中配置DBCP数据源。 首先,我们需要在项目中引入DBCP...

    JDBC相关单元测试及通用的Dao

    jdbc详细测试用例,包括connection ,statement,preparedstatement,resultset,BeanUtils,DBUtils,数据库连接池dbcp,cp03的单元测试,及dao层的统一封装,适合项目开发人员学习和项目中使用。

    TestNG框架使用

    `BasicConnectionPoolTestUtil.java`可能是测试工具类,用于创建和管理连接池,`ConnectionPool.java`则可能实现了具体的连接池逻辑,如基于HikariCP、C3P0或DBCP等。测试时,通过连接池获取数据库连接,保证了测试...

    数据库连接

    通常,这类类会实现一个数据库连接池,如Apache的DBCP或C3P0,或者使用Spring框架中的JdbcTemplate或DataSource。数据库连接池可以有效地管理数据库连接,减少创建和销毁连接的开销,提高系统性能。封装类可能会包含...

    java连接数据库测试

    在实际应用中,为了提高性能和效率,开发者通常会使用连接池(如C3P0、HikariCP或Apache DBCP)来管理和重用数据库连接,而不是每次需要时都新建一个。 7. **测试策略** 测试数据库连接时,应确保覆盖多种情况,...

    jdbc 连接数据库测试项目

    - 使用连接池:如C3P0、HikariCP或Apache DBCP,它们可以复用数据库连接,减少创建和关闭连接的开销。 - 使用Try-with-Resources: Java 7引入的新特性,使得资源在finally块中自动关闭,避免资源泄露。 - 参数化查询...

    org.everit.osgi.bundles.commons-dbcp-1.4-v20140203.zip

    标题中的"org.everit.osgi.bundles.commons-dbcp-1.4-v20140203.zip"是一个开源项目,它包含了Apache Commons DBCP的OSGi封装版本,适用于2014年2月3日的1.4版。Apache Commons DBCP(Database Connection Pool)是...

    JDBC包含德鲁伊配置文件jar包.zip

    4. **Apache Commons DBCP**:`commons-dbcp-1.2.2.jar`是Apache Commons的一个子项目,提供了一个数据库连接池实现。虽然Druid在很多方面都优于DBCP,但DBCP在一些老项目中仍然被使用。它可以帮助管理数据库连接,...

    Java连接数据库包

    - **连接池**:在大型应用中,使用连接池(如C3P0、HikariCP、DBCP等)可以有效地管理和复用数据库连接,提高性能并减少资源消耗。 - **预编译的SQL语句**:PreparedStatement不仅可以防止SQL注入,还可以提高执行...

Global site tag (gtag.js) - Google Analytics