JDBC代码模板
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代码模板的更多相关文章
- SHDP--Working With HBase (二)之HBase JDBC驱动Phoenix与SpringJDBCTemplate的集成
Phoenix:Phoenix将SQL查询语句转换成多个scan操作,并编排执行最终生成标准的JDBC结果集. Spring将数据库访问的样式代码提取到JDBC模板类中,JDBC模板还承担了资源管 ...
- JDBC连接SQL Server代码模板
* JDBC连接SQL Server数据库 代码模板* Connection: 连接数据库并担任传送数据的任务:* Statement : 执行SQL语句:* Re ...
- JDBC连接MySQL数据库代码模板
下面这个例子是最简单的JDBC连接MySQL数据库的例子. 一般步骤: 1.注册驱动: 2.建立连接: 3.创建语句: 4.处理结果: 5.释放资源. 注意: 1.软件开发环境:MyEclipse 8 ...
- JDBC简介及编码步骤
一.什么是JDBC JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Jav ...
- JavaWeb 后端 <八> 之 JDBC基礎(全)
一.JDBC简介 1.JDBC是SUN公司为了简化操作数据推出一套规范.数据库厂商的驱动就是对JDBC的实现. 2.Java Data Base Connectivity(java数据库连接),它主要 ...
- 安卓工作室 android studio文件和代码模板,以及汉化出错问题
安卓工作室 android studio文件和代码模板,以及汉化出错问题 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313 ...
- Java数据库连接技术——JDBC
大家好,今天我们学习了Java如何连接数据库.之前学过.net语言的数据库操作,感觉就是一通百通,大同小异. JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力. JDBC API ...
- 玩转spring boot——结合AngularJs和JDBC
参考官方例子:http://spring.io/guides/gs/relational-data-access/ 一.项目准备 在建立mysql数据库后新建表“t_order” ; -- ----- ...
- [原创]java使用JDBC向MySQL数据库批次插入10W条数据测试效率
使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:通过使用addBatch( ...
随机推荐
- NOIP200805 笨小猴(低效算法)(一大桶水)【A006】
[A006]笨小猴[难度A]—————————————————————————————————————————————————————————————— [题目要求] 笨小猴的词汇量很小,所以每次做英 ...
- 【BZOJ1672】[Usaco2005 Dec]Cleaning Shifts 清理牛棚 动态规划
[BZOJ1672][Usaco2005 Dec]Cleaning Shifts Description Farmer John's cows, pampered since birth, have ...
- crontab安装和用法(定时任务)
crontab命令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读取和执行.通常 ...
- Mysql创建用户并授权
运行命令行 mysql -uroot -p 登录mysql use mysql; 创建用户:create user 'test123'@'localhost' identified by '12345 ...
- php取整函数ceil,floor,round,intval函数的区别
开发过程中,遇到数据处理取整的时候,你会用哪个呢,小涛来介绍一下:PHP取整函数有ceil,floor,round,intval,下面详细介绍一下: 1.ceil — 进一法取整说明float cei ...
- Oracle 教程
视频教程 Oracle DBA数据库高级工程师职业学习指南与职业规划视频课程
- 从零构建JavaScript的对象系统
一.正统的类与继承 类是对象的定义,而对象是类的实例(Instance).类不可直接使用,要想使用就必须在内存上生成该类的副本,这个副本就是对象. 以Java为例: public class Grou ...
- mysql中影响myisam引擎写入性能的三项设置
一.LOW_PRIORITY1.对于myisam默认是写操作优先,读操作滞后.通过该项更改,可以使读操作优先,写操作在有空闲的时候再写入.但该项可能在理论上造成,写被永远阻塞. SQL语句中使用示例: ...
- P1041 传染病控制
#include <bits/stdc++.h> using namespace std; const int maxn = 301; std::vector<int> son ...
- EntityFramework 性能优化
1. 查询时如果不缓存数据,可以加快加载速度 //连接数据库 TestDbContext db = new TestDbContext(); //使用 AsNoTracking() 方法后将不会在 D ...