javaWeb_adv 连接池和数据源

本文介绍了如何通过连接池优化Java Web应用中的数据库连接管理,详细阐述了使用TomCat连接池的配置方法及性能提升案例。
JavaWeb Advance Chapter 6 ConnectionPool and DataSource
目标:
	为了解决以前那种老方法中的用户访问一次数据就要连接一次数据库的问题,
	就有了连接池这个东西了~我用的呢是TomCat的连接池,具体的方法如下
1.首先建立一个DBUtil
pubic class DBUtil{
	
	private static DataSource ds=null;

	//这个呢是java中的静态语句块,他会是整个类中最先执行并且只执行一次的东西
	static{
		try{
			//得到Context对象
			Context ctx=new InitialContext();
			//注意lookUp中的参数中"java:comp/env/"是不变的,后边的就是Context.xml文件中配置的名字了
			ds=(DataSource)ctx.lookup("java:comp/env/jdbc/master");
		}catch(Exception e){}
	}
	
	//获取连接
	public Connection getConn(){
		try{
			return ds.getConnection();
		}catch(Exception e){}
	}
}

2.类写好后接下来就是配置Context.xml文件了,在TomCat的conf目录下找到
	context.xml,打开,进行编辑,在<context></context>标签中添加内容
<Context>
	<Resource
		//名称
		name="jdbc/master"
		//连接数据库的用户名和密码
		username="sa" password="123456"
		//数据库端口和名称
		url="jdbc:sqlserver://localhost:1433;databaseName=master"
		//驱动
		driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
		//初始化条数
		initialSize="30"
		//最大空闲数/连接数/等待时间
		maxIdle="30" maxActive="0" maxWait="10000"
		//数据类型
		type="javax.sql.DataSource"
	/>
</Context>
3.文件配置好了过后就是sqljdbc.jar文件的导入了!
	a)如果是tomcat的服务器那么就可以把jar文件放到tomcat目录下的lib目录下中
	b)如果是MyEclipse自带的服务器就没有lib文件夹,这时候要这样做:
		在菜单中:Windows-Prefreneces-MyEclipse-Servers-integrated Sandbox-MyEclipse Tomcat-Path,
		在第一个栏目中点击Add找到sqljdbc.jar文件导入即可
	c)如果租用的服务器中无法找到Conf目录下的context.xml文件,那么可以直接把context.xml文件放到
		WebRoot/META-INF/目录下依然可以实现效果
4.完毕了~经过我本人测试,以十万条连接来作为测试内容,很明显的可以看出速度真的提高了不少!
	使用了静态语句块后速度又快了不少(大约十倍)!
上图就是用于测试十万条数据的循环语句
<!--
Author:Lovingshu's Forever
Date:2011.09.16
Remark:The Review of the JavaWeb_Advance Chapter6:The ConnectionPool and DataSource
-->


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值