zoukankan      html  css  js  c++  java
  • DBCP数据库连接池技术的两种实现方式

    一、

      导入相应的jar包,

    方式一如下

     二、

      DataSource source = null;不管是C3P0还是DBCP或者其他数据库连接池第一步都是DataSource source = null,Ctrl+T 获取DataSource实现的类,找到BasciDataSource的构造方法,

    BasicDataSource source = new BasicDataSource();//创建DBCP的数据库连接池

     具体有什么方法可以查看API文档  查看文档的方法:在commons-pool-1.5.5apidocsindex.html里查看

    三、设置基本信息

    查看API文档 source调用相应额set方法

    source.setDriverClassName("com.mysql.jdbc.Driver");
    source.setUrl("jdbc:mysql://localhost:3306/test?serverTimezone=UTC");
    source.setUsername("root");
    source.setPassword("123");

    四、设置其他涉及数据库连接池相关管理的属性

     方式二使用配置文件如下

    一、查API,BasicDataSourceFactory

    BasicDataSourceFactory.createDataSource(Properties properties)需要注意的是如果直接这么写的话参数不是Properties而是args,此时需要导入源码commons-dbcp-1.4-src.zip

    BasicDataSourceFactory.createDataSource(properties);到这里就需要创建一个Properties的对象即配置文件,创建文件写好配置信息,

    username=root
    password=123
    url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC
    driverClassName=com.mysql.jdbc.Driver

    用properties.load方法加载配置文件,

    FileInputStream is = new FileInputStream(new File("src/dbcp.properties"));//和下边的方法的区别就是这个方法的目录需要加上src/    因为这个方法创建字符流对象默认是在当前项目下
    properties.load(is);

    或者InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("dbcp.properties");用类的加载器获取字符流对象然后加载

            Properties properties = new Properties();
            //InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("dbcp.properties");
            FileInputStream is = new FileInputStream(new File("src/dbcp.properties"));
            properties.load(is);
            DataSource dataSource = BasicDataSourceFactory.createDataSource(properties);
            Connection con = dataSource.getConnection();
            System.out.println(con);
  • 相关阅读:
    南阳779
    南阳599
    南阳484
    margin叠加相邻两个元素的上下margin是叠加在一起
    margin
    padding
    css05 字体以及行间距
    mysql相似于oracle的to_char() to_date()方法
    sqlite两表更新update
    SQL查找重复项目
  • 原文地址:https://www.cnblogs.com/kys-mxm/p/12699317.html
Copyright © 2011-2022 走看看