如何在tomcat中配置连接池.docx
- 文档编号:7664461
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:11
- 大小:17.01KB
如何在tomcat中配置连接池.docx
《如何在tomcat中配置连接池.docx》由会员分享,可在线阅读,更多相关《如何在tomcat中配置连接池.docx(11页珍藏版)》请在冰豆网上搜索。
如何在tomcat中配置连接池
四、对Tomcat4.1.18的DBCP配置
第一步:
配置server.xml
在server.xml文件中找到
--TomcatRootContext-->
--
debug="0"/> --> 将其改为 --TomcatRootContext--> type="javax.sql.DataSource"/> oracle: thin: @192.168.0.50: 1521: oradb 说明: 从配置文件可以看出,DBCP的配置与Tyrex类似,但功能更加丰富。 相同就不多说,重点讲述不同的地方。 factory参数: 即基础对象工厂,这里取值mons.dbcp.BasicDataSourceFactory,即DBCP自带的工厂,也可以用别的。 需说明一点是,虽然4.1.18里主推DBCP作连接池,但仍然可以使用Tyrex作为连接池,而且此时的Tyrex已从0.9.7.0升级到了1.0,支持JTA/JCA对象等,对象的获取仍然是通过JNDI,具体的配置方法可以参见Tomcat文档。 url参数: oracle: thin: @192.168.0.50: 1521: oradb url是数据库访问地址,在前提已提到。 接下来有三个参数,均为连接数相关,如下: maxActive是最大激活连接数,这里取值20个,表示同时最多有20个与数据库的连接。 maxIdle是最大空闲连接数,这里取值10个,表示即使没有连接请求时,依然可以保持10空闲的连接,而不被清除,随时处于待命状态。 关于对象的状态,有兴趣的朋友可以看看EJB方面的资料。 maxWait是最大等待秒钟数,这里取值-1,表示无限等待,直到超时为止,也可以取值9000,即表示9秒后超时。 关于maxActive与maxIdle的一点建议,对于企业级应用,其两者的值一般比较接近,或者相同,关键是要分析应用的大小。 第二步: 配置web.xml 打开webapps/ROOT/WEB-INF下web.xml,加入如下内容: Datasourceexample 说明: 此步可以省略,即不配置web.xml也可以使用连接池,但正式项目应用时还是建议加上。 第三步: 将Oracle的JDBC驱动classes12.jar拷贝到Tomcat安装目录的common/lib下。 至此,配置完成,测试代码将在后面给出。 五、测试代码 下面写一个JSP文件testdb.jsp,并将testdb.jsp置于webapps/ROOT目录下,测试一下配置是否正确,此测试对以上两个版本均适合。 数据库如下: Createtabletest(idvarchar2(12),namevarchar2(30)) testdb.jsp内容如下: <%@pagecontentType="text/html;charset=GBK"%> <%@pageimport="java.sql.*"%> <%@pageimport="javax.naming.*"%> <% try{ ContextinitCtx=newInitialContext(); Contextctx=(Context)initCtx.lookup("java: comp/env"); //获取连接池对象 Objectobj=(Object)ctx.lookup("jdbc/OracleDB"); //类型转换 javax.sql.DataSourceds=(javax.sql.DataSource)obj; Connectionconn=ds.getConnection(); Statementstmt=conn.createStatement(); StringstrSql="insertintotest(id,name)values('00001','holen') "; stmt.executeUpdate(strSql); strSql="selectid,namefromtest"; ResultSetrs=stmt.executeQuery(strSql); if(rs.next()){ out.println(rs.getString (1)); out.println(rs.getString (2)); } }catch(Exceptionex){ ex.printStackTrace(); thrownewSQLException("cannot getConnectionpool."); } %> 说明: 先通过JNDI找到jdbc/OracleDB对象,这里是分两步完成的,也可以一步完成,如 Objectobj=(Object)ctx.lookup("java: comp/env/jdbc/OracleDB"); 然后将得到的对象转换成DataSource类型,进而得到连接,得到连接后就可以进行相应的数据库操作了。 这里对数据库进行了两步操作,第一步是插入一条记录,第二步是从数据库中取出记录,并显示第一条记录的内容。 打开网页,在地址栏中输入http: //localhost: 8080/testdb.jsp,若一切正常,将显示“00001holen”。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 tomcat 配置 连接