javaWeb_adv 连接池和数据源

来源:互联网 发布:域名查询 ename 编辑:程序博客网 时间:2024/06/07 03:41
JavaWeb Advance Chapter 6 ConnectionPool and DataSource目标:为了解决以前那种老方法中的用户访问一次数据就要连接一次数据库的问题,就有了连接池这个东西了~我用的呢是TomCat的连接池,具体的方法如下1.首先建立一个DBUtilpubic 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 ForeverDate:2011.09.16Remark:The Review of the JavaWeb_Advance Chapter6:The ConnectionPool and DataSource-->


 

原创粉丝点击