import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties; import org.apache.commons.dbcp.BasicDataSource;
import org.apache.commons.dbcp.BasicDataSourceFactory;
import org.junit.Test; /**
* 使用dbcp连接池工具
* @author APPle
*
*/
public class TestDBCP {
private static String url = "jdbc:mysql://localhost:3306/mydb";
private static String user = "root";
private static String password = "root";
private static String driverClass = "com.mysql.jdbc.Driver";
@Test
public void test1(){
//1.创建连接池对象
BasicDataSource bds = new BasicDataSource(); //2.使用方法设置连接参数
bds.setUrl(url);
bds.setUsername(user);
bds.setPassword(password);
bds.setDriverClassName(driverClass); //3.设置连接池参数
bds.setInitialSize(5); //初始化连接数
bds.setMaxActive(8);//最大并发连接数
bds.setMaxWait(5000);//最大等待时间,当连接超过最大并发连接数之后,用户需要等待的时间,当超过等待的时间,会抛出连接超时的异常
bds.setMaxIdle(3);//最大空闲连接数量。当程序拿到连接超过了空闲时间没用,那么连接池就会回收这个连接对象
//..... //4.获取连接
for(int i=1;i<=9;i++){
Connection conn = null;
try {
conn = bds.getConnection(); //遵守sun公司的jdbc的DataSource接口规范
/*if(i==1){
PreparedStatement stmt = null;
stmt = conn.prepareStatement("create table student(id int)");
stmt.executeUpdate();
}*/ System.out.println(conn); /*if(i==3){
//释放连接
conn.close();//这里并不是真的关闭连接,而是把连接对象放回连接池
}*/
} catch (SQLException e) {
e.printStackTrace();
}
} } /**
* 使用配置文件的方法读取连接参数和连接池参数(推荐使用)
* 默认规则: properties文件的键名称和设置参数的方法名称保持一致。属性自动设置到BasicDataSource对象中
*/
@Test
public void test2(){
try {
//1.从连接池工厂类中 , 创建连接池对象
Properties prop = new Properties();
//读取jdbc.properties文件
prop.load(TestDBCP.class.getResourceAsStream("/jdbc.properties"));
BasicDataSource bds = (BasicDataSource)BasicDataSourceFactory.createDataSource(prop); //2.获取连接
for(int i=1;i<=9;i++){
Connection conn = null;
try {
conn = bds.getConnection();
/*if(i==1){
PreparedStatement stmt = null;
stmt = conn.prepareStatement("create table student(id int)");
stmt.executeUpdate();
}*/ System.out.println(conn); if(i==3){

  

url=jdbc:mysql://localhost:3306/day19
username=root
password=root
drvierClassName=com.mysql.jdbc.Driver initialSize=5
maxActive=8
maxWait=5000
maxIdle=3000

JDBC代码模板的更多相关文章

  1. SHDP--Working With HBase (二)之HBase JDBC驱动Phoenix与SpringJDBCTemplate的集成

    Phoenix:Phoenix将SQL查询语句转换成多个scan操作,并编排执行最终生成标准的JDBC结果集.   Spring将数据库访问的样式代码提取到JDBC模板类中,JDBC模板还承担了资源管 ...

  2. JDBC连接SQL Server代码模板

    *                  JDBC连接SQL Server数据库 代码模板* Connection: 连接数据库并担任传送数据的任务:* Statement :  执行SQL语句:* Re ...

  3. JDBC连接MySQL数据库代码模板

    下面这个例子是最简单的JDBC连接MySQL数据库的例子. 一般步骤: 1.注册驱动: 2.建立连接: 3.创建语句: 4.处理结果: 5.释放资源. 注意: 1.软件开发环境:MyEclipse 8 ...

  4. JDBC简介及编码步骤

    一.什么是JDBC JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Jav ...

  5. JavaWeb 后端 <八> 之 JDBC基礎(全)

    一.JDBC简介 1.JDBC是SUN公司为了简化操作数据推出一套规范.数据库厂商的驱动就是对JDBC的实现. 2.Java Data Base Connectivity(java数据库连接),它主要 ...

  6. 安卓工作室 android studio文件和代码模板,以及汉化出错问题

    安卓工作室 android studio文件和代码模板,以及汉化出错问题 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313 ...

  7. Java数据库连接技术——JDBC

    大家好,今天我们学习了Java如何连接数据库.之前学过.net语言的数据库操作,感觉就是一通百通,大同小异. JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力. JDBC API ...

  8. 玩转spring boot——结合AngularJs和JDBC

    参考官方例子:http://spring.io/guides/gs/relational-data-access/ 一.项目准备 在建立mysql数据库后新建表“t_order” ; -- ----- ...

  9. [原创]java使用JDBC向MySQL数据库批次插入10W条数据测试效率

    使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:通过使用addBatch( ...

随机推荐

  1. Entity Framework 实体框架的形成之旅--实体数据模型 (EDM)的处理(4)

    在前面几篇关于Entity Framework 实体框架的介绍里面,已经逐步对整个框架进行了一步步的演化,以期达到统一.高效.可重用性等目的,本文继续探讨基于泛型的仓储模式实体框架方面的改进优化,使我 ...

  2. HDU5942 : Just a Math Problem

    \[\begin{eqnarray*}ans&=&\sum_{i=1}^ng(i)\\&=&\sum_{i=1}^n\sum_{d|i}\mu^2(d)\\&= ...

  3. Leetcode Gray Code

    题目的意思就是将十进制转换成格雷码 首先将二进制转换成格雷码 根据此图可以看出二进制的第i和第i+1位异或为格雷码的第i+1位,对于给定的十进制数x,其(x>>1)相当于二进制向右移动一位 ...

  4. NSDateFormatter 相关理解

    Formatter译为格式,相应的NSDateFormatter就相当于是NSDate的转换类,将NSDate转换为另一种格式,或转换回来.NSDate没有自己的输出,需要借助NSDateFormat ...

  5. osg矩阵变换节点-----平移旋转缩放

    osg矩阵变换节点-----平移旋转缩放 转自:http://www.cnblogs.com/ylwn817/articles/1973396.html 平移旋转缩放这个三个是osg矩阵操作中,最常见 ...

  6. 关于box-shadow属性的一点心得

    一般我用到box-shadow都是用于诸如按钮,文本块,某些图标,css类似为: box-shadow: 1px 1px 5px rgba(0, 0, 0, .8); 这样,样式看上去会更加柔和,或者 ...

  7. 配置ssl访问(https)

    转载自http://www.blogjava.net/stevenjohn/archive/2012/09/26/388600.html 简要记录主要步骤备忘 1.进入到jdk下的bin目录 2.输入 ...

  8. bzoj1745: [Usaco2005 oct]Flying Right 飞行航班(贪心+map)

    之前做过一道基本一样的题目,抽象出来就是有个容量为c的载体,一些线段上某个点到另一个点要运输w个东西,求从头到尾最多能运多少东西. 这种模型可以用贪心做,用map,map[r]表示r的那个点,我们准备 ...

  9. VerifyCodeUtil.java

    package com.vcredit.framework.utils; import java.awt.Color;import java.awt.Font;import java.awt.Grap ...

  10. Oracle EBS - AOL

    AOL: (Path: /u43/dev6/interface/aol) 1. Goto system administrator response 2. View -> Request (Sa ...