博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DBCP连接池
阅读量:3951 次
发布时间:2019-05-24

本文共 2991 字,大约阅读时间需要 9 分钟。

1.拷贝jar文件

2.直接在代码里面进行配置:

package com.DBCP;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;import org.apache.commons.dbcp.BasicDataSource;import org.junit.Test;import com.util.JDBCUtil;public class DBCPDemo {		@Test	public void testDBCP01() {				Connection conn = null;		PreparedStatement ps = null;		try {			//1.获取数据源			BasicDataSource dataSource = new BasicDataSource();			//表明 数据库类型 以及用户的信息			dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");			dataSource.setUrl("jdbc:mysql://localhost/bank");			dataSource.setUsername("root");			dataSource.setPassword("admin");						//2.获取连接对象			conn= dataSource.getConnection();			String sql = "insert into account values(null,?,?)";			 ps = conn.prepareStatement(sql);			ps.setString(1, "zhaoliu");			ps.setInt(2, 2000);			ps.executeUpdate();		} catch (SQLException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}finally {			JDBCUtil.release(conn, ps);		}	}}

3.使用配置文件进行配置

文件名:dbcpconfig.properties

#连接设置driverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/bankusername=rootpassword=admin#
initialSize=10#最大连接数量maxActive=50#
maxIdle=20#
minIdle=5#
maxWait=60000#JDBC驱动建立连接时附带的连接属性属性的格式必须为这样:[属性名=property;] #注意:"user" 与 "password" 两个属性会被明确地传递,因此这里不需要包含他们。connectionProperties=useUnicode=true;characterEncoding=gbk#指定由连接池所创建的连接的自动提交(auto-commit)状态。defaultAutoCommit=true#driver default 指定由连接池所创建的连接的事务级别(TransactionIsolation)。#可用值为下列之一:(详情可见javadoc。)NONE,READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLEdefaultTransactionIsolation=READ_UNCOMMITTED

代码块

package com.DBCP;import java.io.FileInputStream;import java.io.InputStream;import java.sql.Connection;import java.sql.PreparedStatement;import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSource;import org.apache.commons.dbcp.BasicDataSourceFactory;import org.junit.Test;import com.util.JDBCUtil;public class DBCPDemo02 {	@Test	public void testDBCP02(){		/*BasicDataSource dataSource = new BasicDataSource();		//不知道这行能不能实现。		dataSource.setConnectionProperties("dbcpconfig.properties");*/				//ResourceBundle bundler = ResourceBundle.getBundle(baseName);				Connection conn = null;		PreparedStatement ps = null;		try {			//获取dbcp连接池即获取数据源			BasicDataSourceFactory factory = new BasicDataSourceFactory();			Properties properties = new Properties();			//			InputStream is = new FileInputStream("src//dbcpconfig.properties");						//导入配置文件			InputStream is = getClass().getClassLoader().getResourceAsStream("dbcpconfig.properties");			properties.load(is);			DataSource dataSource = factory.createDataSource(properties);						//2. 得到连接对象			conn = dataSource.getConnection();			String sql = "insert into account values(null , ? , ?)";			ps = conn.prepareStatement(sql);			ps.setString(1, "zhoaliu");			ps.setInt(2, 200);						ps.executeUpdate();					} catch (Exception e) {			e.printStackTrace();		}finally {			JDBCUtil.release(conn, ps);		}			}	}``

转载地址:http://ldgwi.baihongyu.com/

你可能感兴趣的文章
iOS-利用运行时给分类添加属性
查看>>
整理的最新WebSHell (php过狗一句话,过狗菜刀,2016过狗一句话,2016php免杀一句话)
查看>>
2016年11月整理的最新php免杀一句话木马, 2017php免杀一句话(php过狗一句话,过狗菜刀,2016过狗一句话,2016php免杀一句话,php过waf一句话)
查看>>
坑:ADO连数据库服务器地址要加端口号
查看>>
宽字符串输出问题
查看>>
将整数转换为宽字符串
查看>>
在类中定义enum实现整数常量功能
查看>>
VS2008下编译MFC报平台版本低解决办法
查看>>
VS2008中新增对话框的初始化函数是虚函数,需要时重写
查看>>
如何在遍历中使用list的删除函数
查看>>
wstring需要显示初始化
查看>>
vs2008下CString和wstring间的转换
查看>>
suse11通过安装最新内核可以上网的经验
查看>>
SUSE静态配置IP成功上网
查看>>
输当前程序执行点所在的文件名和行数
查看>>
[2013年12月12日]SQL Server 要明确选择使用哪个数据库
查看>>
通过sleep让程序等待外部条件改变
查看>>
通过等待键盘输入让程序等待外部条件改变
查看>>
SQL语句学习
查看>>
通过限制循环次数来避免死循环
查看>>