java学习笔记—第三方数据库连接池包1(29)
第一步:导入dbcp包

第二步:通过核心类连接数据
BasicDataSource它是javax.sql.DataSrouce的子类。
一个工具类:BasicDataSourceFactory。
手工通过代码连接数据库:
    BasicDataSource ds = new BasicDataSource();
       //设置driver
       ds.setDriverClassName("com.mysql.jdbc.Driver");
       //设置url
       ds.setUrl("jdbc:mysql:///db909?characterEncoding=UTf8");
       ds.setPassword("");
       ds.setUsername("root");
       ds.setMaxActive() ;//设置最多有几个连接
       ds.setInitialSize();//设置在开始时创建几个连接
  手工连接,不建议这么做。
第三步:创建一个资源文件
在dbcp中一个类专门用于读取资源文件的:
BasicDataSourceFactory
#以下所有属性,都来自于BaiscDataSource的setXxxx
//增加一个配置文件jdbc.properties
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///db909
username=root
password=
maxActive= Properties p = new Properties();
p.load(DbcpPool.class.getResourceAsStream("jdbc.properties"));
DataSource ds =
new BasicDataSourceFactory().createDataSource(p) ;
第四步、使用连接池
在一个项目中,就只能拥有一个DataSource的实例。在这个dataqSource3中有多个Connectioin。
声明一个工厂类,创建维护唯一的一个DataSource
package cn.itcast.utils;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp.BasicDataSourceFactory;
public class DataSourceUtils {
private DataSourceUtils(){}
private static DataSource ds;
static{
try{
Properties p =
new Properties();
p.load(DataSourceUtils
.class.getClassLoader()
.getResourceAsStream("jdbc.properties"));
ds =
new BasicDataSourceFactory().createDataSource(p);
}catch(Exception e){}
}
//返回一个唯一的连接
public static Connection getCon(){
Connection con = null;
try {
con = ds.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
//提供一个方法返回DataSource
public static DataSource getDs(){
return ds;
}
}
java学习笔记—第三方数据库连接池包1(29)的更多相关文章
- java学习笔记—第三方操作数据库包专门接收DataSource-dbutils (30)
		
Dbutils 操作数据第三方包.依赖数据源DataSource(DBCP|C3p0). QueryRunner – 接收DataSource|Connection,查询数据删除修改操作.返回结果. ...
 - JDBC学习笔记(8)——数据库连接池(dbcp&C3P0)
		
JDBC数据库连接池的必要性 一.在使用开发基于数据库的web程序时,传统的模式基本是按一下步骤: 1)在主程序(如servlet/beans)中建立数据库连接 2)进行sql操作 3)断开数据库连接 ...
 - 【转】JDBC学习笔记(8)——数据库连接池(dbcp&C3P0)
		
转自:http://www.cnblogs.com/ysw-go/ JDBC数据库连接池的必要性 一.在使用开发基于数据库的web程序时,传统的模式基本是按一下步骤: 1)在主程序(如servlet/ ...
 - JDBC编程学习笔记之数据库连接池的实现
		
在JDBC编程的时候,获取到一个数据库连接资源是很宝贵的,倘若数据库访问量超大,而数据库连接资源又没能得到及时的释放,就会导致系统的崩溃甚至宕机.造成的损失将会是巨大的.再看有了数据库连接池的JDBC ...
 - java学习笔记—c3p0连接池与元数据分析(42)
		
第一步:导入c3p0包 第二步:在classpath目录下,创建一个c3p0-config.xml <?xml version="1.0" encoding="UT ...
 - 0041 Java学习笔记-多线程-线程池、ForkJoinPool、ThreadLocal
		
什么是线程池 创建线程,因为涉及到跟操作系统交互,比较耗费资源.如果要创建大量的线程,而每个线程的生存期又很短,这时候就应该使用线程池了,就像数据库的连接池一样,预先开启一定数量的线程,有任务了就将任 ...
 - java学习笔记—标准连接池的实现(27)
		
javax.sql.DataSource. Java.sql.* DataSource 接口由驱动程序供应商实现.共有三种类型的实现: 基本实现 - 生成标准的 Connection 对象 – 一个D ...
 - Java学习笔记4
		
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
 - 20145230《java学习笔记》第九周学习总结
		
20145230 <Java程序设计>第9周学习总结 教材学习内容 JDBC JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商则对接口进行操作, ...
 
随机推荐
- Android Studio中由于gradle插件版本和gradle版本对应关系导致的编译失败的问题
			
今天在Android Studio中导入新项目,import之后编译报错,报错信息基本都是和版本相关,查询gradle版本相关知识,了解到gradle插件版本和gradle版本有相应的匹配关系,对应如 ...
 - Spring cloud 两种服务调用方式(Rest + Ribbon)  和 Fegin方式
			
1:Rest + Ribbon @Bean @LoadBalanced RestTemplate restTemplate() { return new RestTemplate(); } @Auto ...
 - JVM  调优参数设置
			
先看Linux内存大小(假设为2G) cat /proc/meminfo |grep MemTotal 查看java初始配置 java -XX:+PrintFlagsInitial Tomcat配置 ...
 - Changing the load order/delay the start of the Server service
			
THE INFORMATION IN THIS ARTICLE APPLIES TO: Secure FTP Server (All Versions) EFT Server (All Version ...
 - MyBatis 提供的内置类型别名
 - Fragment生命周期(转)
			
Android在3.0中引入了fragments的概念,主要目的是用在大屏幕设备上--例如平板电脑上,支持更加动态和灵活的UI设计.平板电脑的屏幕要比手机的大得多,有更多的空间来放更多的UI组件,并且 ...
 - freetype 编译
			
https://blog.csdn.net/yapingxin/article/details/51841039
 - 解题报告-1012. Numbers With Repeated Digits
			
Given a positive integer N, return the number of positive integers less than or equal to N that have ...
 - 监测IIS上网站的连接数
			
1.运行,输入,perfmon.msc 2.性能监视器>右侧区域>右键 添加计数器 3.在“可用计数器” 区域,选择Web Service,展开Web Service,选择Current ...
 - Maven项目下java.lang.ClassNotFoundException常规解决办法
			
网上很多要修改.class .project的比较麻烦有时候还不一定管用.下面的方法适合于项目用已经引用了jar,但是运行时却ClassNotFound,请用如下方法试试: 严重: Error con ...