day07 c3p0连接池

使用junit单元测试
要求:
1.方法是public void xxx(){}
2.在方法上添加 @Test
3.在@Test 按下 ctrl+1(快速锁定错误)
4.在方法上右键 run as -->junit 就可以执行方法了.

案例2-自定义一个连接池(理解思想)

装饰者模式:★★★
使用步骤:
1.装饰者和被装饰者实现同一个接口或者继承同一个类
2.装饰者中要有被装饰者的引用
3.对需要增强的方法进行加强
4.对不需要加强的方法调用原来方法

package wrap;

public interface Car {

    public  abstract void start();
    public abstract void stop();
}

//============另一文件====================
package wrap;

public class CarWrap implements Car{

    private Car car;

    public CarWrap(Car car) {
        this.car = car;
    }
    @Override
    public void start() {
        System.out.println("accelerate....");
        car.start();
    }

    @Override
    public void stop() {
         car.stop();
    }

}

//============另一文件====================
package wrap;

public class QQ implements Car{

    @Override
    public void start() {
        System.out.println("QQ run");
    }

    @Override
    public void stop() {
        System.out.println("QQ stop");
    }

}

//============另一文件====================

package wrap;

public class Tesla implements Car{

    public static void main(String[] args) {

        QQ q = new QQ();
        q.start();
        q.stop();

        System.out.println("=============================");
        CarWrap carWrap = new CarWrap(new Tesla());
        carWrap.start();
        carWrap.stop();

        System.out.println("++++++++++++++++++++++++");
        CarWrap c = new CarWrap(q);
        c.start();
        c.stop();
    }

    @Override
    public void start() {
        System.out.println("Tesla start");
    }

    @Override
    public void stop() {
        System.out.println("Tesla stop");
    }

}

C3P0:(★)
使用步骤:
  1.导入jar包(c3p0-0.9.1.2.jar)
  2.使用api
    a.硬编码(不推荐)
      new ComboPooledDataSource()
    b.配置文件
      配置文件的名称:c3p0.properties 或者 c3p0-config.xml
      配置文件的路径:src下

    编码只需要一句话,其余同dbcp
    ComboPooledDataSource ds = new ComboPooledDataSource();
    new ComboPooledDataSource(String configName)//使用命名的配置 若配置的名字找不到,使用默认的配置

package c3p0;

import java.sql.SQLException;

import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.ArrayHandler;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class C3p0Demo {

    public static void main(String[] args) {
        ComboPooledDataSource ds = new ComboPooledDataSource();

        QueryRunner qr = new QueryRunner(ds);

        String sql = "SELECT * FROM sort";
        try {
            Object[] res = qr.query(sql, new ArrayHandler());

            for (Object obj : res) {
                System.out.print(obj + "  ");
            }

        } catch (SQLException e) {
            e.printStackTrace();
        }

    }

}

时间: 2024-08-07 21:17:40

day07 c3p0连接池的相关文章

DBCP连接池与c3p0连接池

1.   DBCP连接池 2.  c3p0连接池(参见上一篇的使用步骤http://www.cnblogs.com/qlqwjy/p/7545012.html)

14、Hibernate对c3p0连接池的配置

1.Hibernate3的c3p0连接池的配置 在hibernate.cfg.xml中配置如下信息: <!-- 1. 数据库连接配置 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql:///

c3p0连接池的使用

C3P0:(★) hibernate和spring使用 有自动回收空闲连接的功能. 使用步骤: 1.导入jar包(c3p0-0.9.1.2.jar) 2.使用api a.硬编码(不推荐) new ComboPooledDataSource() b.配置文件 配置文件的名称:c3p0.properties 或者 c3p0-config.xml 配置文件的路径:src下 配置文件中的名字要少用:c3p0.user()格式 编码只需要一句话 new ComboPooledDataSource()//使

C3P0连接池一些基本配置

1 C3P0连接池配置 2 数据库连接是一个耗费大量资源且相当慢的操作,所以为了提高性能和连接速度,诞生了连接池这样的概念. 3 在多用户并发操作过程中,连接池尤为重要. 4 它是将那些已连接的数据库连接存放在一个容器里(连接池),这样以后别人要连接数据库的时候,将不会重新建立数据库连接,会直接从连接池里取出可用的连接,用户使用完毕后,连接又重新还回到连接池中. 5 注意:连接池里的连接将会一直保存在内存里,即使你没用也是一样.所以这个时候你得权衡一下连接池的连接数量了. 6 7 <c3p0-c

Maven 工程下 Spring MVC 站点配置 (三) C3P0连接池与@Autowired的应用

Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 前两篇文章主要是对站点和数据库操作配置进行了演示,如果单单实现这两个需求的话,那么基本足够,但是很多时候一个网站除了仅仅能够访问数据库是不够的,它还需要对性能以及更简化的步骤有着更多的要求,这一篇重点就是帮助我们如何去实现数据连接池管理与更简化便利的开发步骤. 如果你觉得自己能写出更高效率的连接池,那你可以不需要这篇文章了,我更建议你可以去开源组织毛遂自

java学习笔记—c3p0连接池与元数据分析(42)

第一步:导入c3p0包 第二步:在classpath目录下,创建一个c3p0-config.xml <?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <!-- 默认配置,只可以出现一次 --> <default-config> <!-- 连接超时设置30秒 --> <property name="checkoutTimeout"

C3P0连接池配置

C3P0是一个开源的JDBC连接池,详情请google. 在spring中,C3P0的一些配置,介绍如下(只列了一部分,不是全部) C3P0更详细的配置项及其含义,请参考:http://www.mchange.com/projects/c3p0/index.html <!-- c3p0连接池配置 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"&g

JNDI配置c3p0连接池

CNDI是什么呢? 就是java命名和目录接口,是SUN公司提供的一种标准的Java命名系统接口. 不好理解?简单说呢,他就是一个资源,放在tomcat里面的一个资源,今天我们就把数据库连接池放到tomcat中,当然你也可以放别的东西,比如Been. ok!开始 首先我们新建web项目: 新建项目叫:JNDI_demo 然后在tomcat目录:F:\apache-tomcat-5.5.25\conf\Catalina\localhost下,创建一个资源. 命名就是:项目名.xml 在我这就叫:J

关于c3p0连接池的一个工具

注:需要的jar包: c3p0-0.9.1.2-jdk1.3.jar c3p0-0.9.1.2.jar c3p0-oracle-thin-extras-0.9.1.2.jar 还需要一个配置文件用来放数据库的连接数据 db.properties package cn.c3p0; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import com.mchange.v2.c3p