




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,直接连接数据库的情形:public class DBUtil /* * 单例模式创建数据库对象 */private static DBUtil instance=null;private DBUtil()/为了保证单例性,必须使用同步关键字public synchronized static DBUtil getInstance()if(instance=null)instance=new DBUtil();return instance;/连接必要的信息public String driver="com.mysql.jdbc.Driver"public String
2、url="jdbc:mysql:/localhost:3306/test"public String username="root"public String password="8921498YW" public Connection getConnection()Connection conn=null;try Class.forName(driver);conn=DriverManager.getConnection(url, username, password); catch (ClassNotFoundException
3、e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();return conn;/测试连接的效率public static void main(String args) throws SQLException long begin=System.currentTimeMillis();/开始时刻for(int i=0;i<1000;i+)/获得1000次连接Connection conn=DBUtil.getInstance().getConnection();conn.close();long end=Sys
4、tem.currentTimeMillis();System.out.println("直接连接数据库所需要的时间:"+(end-begin);/在我的机子上1000次直接连接耗时:120312, 使用DBCP连接池:/* * 数据库连接池: * 它是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态的对池中的连接进行申请,使用,释放 * * DBCP是apache组织下的一个开源项目 * 需要两个jar包,commons-dbcp-1.2.2和commons-pool * 这种连接池效率很高,但经常出现连接丢失现象,用的不是很多,用的多的是c3p0 *
5、 */public class DBUtilOfDBCP private static BasicDataSource dataSource=null;/数据源private static DataSourceConnectionFactory factory;/连接工厂private static DBUtilOfDBCP instance=null;private DBUtilOfDBCP()dataSource=new BasicDataSource();/设置jdbc相关信息dataSource.setUrl(url);dataSource.setUsername(username);
6、dataSource.setPassword(password);dataSource.setDriverClassName(driver);/连接池设置dataSource.setInitialSize(20);/初始连接数dataSource.setMaxActive(100);/最大获取连接数dataSource.setMaxIdle(30);/最大可用空闲连接数dataSource.setMinIdle(10);/最小可用空闲连接数factory=new DataSourceConnectionFactory(dataSource);/为了保证单例性,必须使用同步关键字public s
7、ynchronized static DBUtilOfDBCP getInstance()if(instance=null)instance=new DBUtilOfDBCP();return instance;/连接必要的信息public String driver="com.mysql.jdbc.Driver"public String url="jdbc:mysql:/localhost:3306/test"public String username="root"public String password="892
8、1498YW" public Connection getConnection() throws SQLException/使用工厂创建连接return factory.createConnection();public static void main(String args) throws SQLException long begin=System.currentTimeMillis();/开始时刻for(int i=0;i<1000;i+)/获得1000次连接Connection conn=DBUtilOfDBCP.getInstance().getConnection
9、();conn.close();long end=System.currentTimeMillis();System.out.println("DBCP连接数据库所需要的时间:"+(end-begin);/在我的机子上1000次DBCP连接耗时:1000毫秒3,使用C3P0连接池:* C3P0,比较稳定 * 需要jar包:c3p0-0.9.1public class DBUtilOfC3P0 private static ComboPooledDataSource dataSource;private static DBUtilOfC3P0 instance=null;pr
10、ivate DBUtilOfC3P0()dataSource=new ComboPooledDataSource();/设置jdbc连接信息dataSource.setUser(username);dataSource.setPassword(password);dataSource.setJdbcUrl(url);try dataSource.setDriverClass(driver); catch (PropertyVetoException e) e.printStackTrace();/设置连接池dataSource.setInitialPoolSize(30);dataSource
11、.setMaxPoolSize(100);dataSource.setMinPoolSize(10);/为了保证单例性,必须使用同步关键字public synchronized static DBUtilOfC3P0 getInstance()if(instance=null)instance=new DBUtilOfC3P0();return instance;/连接必要的信息public String driver="com.mysql.jdbc.Driver"public String url="jdbc:mysql:/localhost:3306/test
12、"public String username="root"public String password="8921498YW" public Connection getConnection() throws SQLException/使用工厂创建连接return dataSource.getConnection();public static void main(String args) throws SQLException long begin=System.currentTimeMillis();/开始时刻for(int i=0;i<1000;i+)/获得1000次连接Conne
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 16840-13:2021/Amd 1:2025 EN Wheelchair seating - Part 13: Determination of the lateral stability property of a seat cushion - Amendment 1
- 储气瓶施工方案
- 桥加宽施工方案
- 河道防水混凝土施工方案
- 新房硬装施工方案
- TSHJNXH 0015-2024 绿色低碳压缩空气站评价导则
- 2025年度模具开模与模具租赁服务合同模板
- 二零二五年度文化演出居间代理协议
- 二零二五年度奶制品企业社会责任履行协议
- 二零二五年度足浴养生品牌授权及经营管理权转让合同
- 第四单元《纸的前世今生》第一课时(说课稿)-2023-2024学年五年级下册综合实践活动粤教版
- 四川省绵阳市2025届高三第二次诊断性考试英语试题(含答案无听力原文及音频)
- 医学实验室风险评估报告-临床实验室风险评估-可复制
- 2022年教资笔试科目三高中数学讲义
- 八大员-劳务员模考试题与答案
- 2024危重症患儿管饲喂养护理-中华护理学会团体标准课件
- 《《中央企业合规管理办法》解读》课件
- 脱硫自动化控制-洞察分析
- 医务人员医德医风培训
- 人教版初中历史八上-第2课 第二次鸦片战争
- 2025年中考语文专题复习:写作技巧 课件
评论
0/150
提交评论