tomcat6.0.18如何配置连接池
主要步骤:
1.要在tomcat下的conf包中的server.xml中加入数据库连接池配置信息:
在<Host>标签下加入
<Context path="/myweb" docBase="D:/apache-tomcat-6.0.18/webapps/myweb" >
<Resource auth="Container" name="jdbc/jlndb" type="javax.sql.DataSource"
factory="org.apache.commons.dbcp.BasicDataSourceFactory"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:JLNDB"
username="db"
password="db"
maxActive="10000"
maxIdle="10000"
maxWait="10000"
removeAbandoned="true"
removeAbandonedTimeOut="10"
logAbandoned="true"/>
</Context>
注释:
path指定访问Web应用的URL入口,注意/myweb,而不是myweb,必须有/。
docBase:表示的项目的具体路径。
< Resource >元素为JNDI,在lookup是要查找的资源,name: 表示JNDI在lookup是输入的资源名。
auth:是连接池管理权属性,Container表示容器管理。
name:表示你的连接池的名称也就是你要访问连接池的地址。
type:是对象的类型。
driverClassName:是数据库驱动的名称。
url:是数据库的地址。
username:是登陆数据库的用户名。
password:是登陆数据库的密码。
MaxActive:连接池的最大数据库连接数。设为0表示无限制。
maxIdle:最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连接将被标记为不可用,然后被释放。设为0表示无限制。
maxWait :最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
removeAbandoned:是否自我中断,默认是 false 。
removeAbandonedTimeout:几秒后数据连接会自动断开,在removeAbandoned为true,提供该值。
logAbandoned:是否记录中断事件, 默认为 false。
注意:
其中factory="org.apache.commons.dbcp.BasicDataSourceFactory" 也可以配置
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
*maxActive:最大连接数据库连接数,设 0 为没有限制
*maxIdle:最大等待连接中的数量,设 0 为没有限制
*maxWait:最大等待毫秒数, 单位为 ms, 超过时间会出错误信息
2.在web.xml中加入配置信息:
数据库资源映射信息
<resource-ref id="db">
<description>DB Connection</description>
<res-ref-name>jdbc/jlndb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
其中id可以不写。
注意:这里我没有配置web.xml也成功了。
3.添加架包,确认tomcat的common/lib或者lib目录下存在如下架包:DBCP的依赖包:
commons-pool.jar
commons-dbcp.jar
数据库的驱动包:我们这里用的是oracle 10g。
ojdbc14.jar
ojdbc14_g.jar
另外再确保存在
naming-resources.jar
naming-factory.jar
naming-common.jar
commons-collections.jar
jndi.jar
4.编写测试jsp名test.jsp
在myweb目录下建立test.jsp内容如下:
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page contentType="text/html;charset=GB2312"%>
<html>
<head>
<title>my jdbc action</title>
</head>
<body>
<h2>连接池测试</h2>
<%
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
DataSource ds = null;
String str=null;
%>
<%
try {
//找到驱动程序并注册
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
//取得数据源
ds = (DataSource) envContext.lookup("jdbc/jlndb");
//以下为另一种取得数据源的方式
//ds = (DataSource) initContext.lookup("java:comp/env/jdbc/jlndb");
//取得数据库连接
con = ds.getConnection();
if (envContext == null) {
System.out.println("envContext is null");
} else {
System.out.println("envContext is not null");
}
if (ds == null) {
System.out.println("ds is null");
} else {
System.out.println("ds is not null");
}
if (con == null) {
System.out.println("con is null");
} else {
System.out.println("con is not null");
}
//创建Statement
stmt = con.createStatement();
//创建sql
String query = "SELECT * FROM DB.TBHLUSER";
//执行查询sql
rs = stmt.executeQuery(query);
while (rs.next()) {
str = rs.getString(2);
System.out.println(str);
}
} catch (SQLException e) {
e.printStackTrace();
}
finally {
if (con != null) {
con.close();
}
}
%>
打印从数据库中取得的数据:
<%=rs.toString()%>
<br>
<%=str%>
</body>
</html>
5.在oracle数据中实例jlndb中建表并添加数据:
建立表tbhluser:
CREATE TABLE tbhluser (
id VARCHAR (4) DEFAULT '' NOT NULL,
name VARCHAR (30) DEFAULT '' ,
password VARCHAR (16) DEFAULT '' ,
groupId VARCHAR (50) DEFAULT '' ,
grade VARCHAR (2) DEFAULT '',
PRIMARY KEY(id)
);
添加数据:
insert into db.tbhluser VALUES ('1', 'yuli', 'yuli', 'yuli', 'yl')
6.启动tomcat,在浏览器中输入http://localhost:8080/myweb/test.jsp
如果看到如下信息
连接池测试
打印从数据库中取得的数据: org.apache.commons.dbcp.DelegatingResultSet@908881
yuli
则表示配置成功。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yefengmeander/archive/2009/06/12/4262867.aspx
tomcat6.0.18如何配置连接池相关推荐
- Tomcat5.0与SqlServer2000配置连接池(jtds驱动)
软件: (1)tomcat5.0 http://www.apache.org (2)jtds.jar http://jtds.sourceforge.net/ (3)jdk1.4 (4)Sqlserv ...
- mysql 8.0.18安装,mysql 8.0.18 安装配置方法图文教程
mysql 8.0.18 安装配置方法图文教程 本文记录了mysql 8.0.18 安装配置图文教程,供大家参考,具体内容如下 第一步:下载MySql 下载地址:MySQL 第二步:安装MySql 打 ...
- Redis 配置连接池,redisTemplate 操作多个db数据库,切换多个db,解决JedisConnectionFactory的设置连接方法过时问题。(转)
Redis 配置连接池,redisTemplate 操作多个db数据库,切换多个db,解决JedisConnectionFactory的设置连接方法过时问题.(转) 参考文章: (1)Redis 配置 ...
- [导入]使用tomcat5.0自带的连接池
使用tomcat5.0自带的连接池 http://dev.csdn.net/Develop/article/28/74940.shtm 阅读全文 类别:Jsp 查看评论 文章来源:http://hi. ...
- Mybatis连接池介绍与分类 Mybatis使用POOLED UNPOOLED配置连接池的原理分析
一.连接池 1.概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象 ...
- tomca7.0 mysql配置连接池_tomcat7.0+mysql连接池配置
1.Tomcat 中直接使用的方法: 在conf/server.xml下的节点里配置resource,例如: auth="Container" type="javax.s ...
- spring3+hibernate4配置连接池C3P0
hibernate自带的连接池一般用在开发阶段或学习阶段,但是在部署到服务器后种种问题涌现 hibernate使用连接池c3p0有2中配置方式 1. 配置在文件applicationContext.x ...
- 详解SpringBoot配置连接池
内置的连接池 目前spring Boot中默认支持的连接池有dbcp,dbcp2, tomcat, hikari三种连接池. 数据库连接可以使用DataSource池进行自动配置. 由于Tomcat数 ...
- 十七、SpringBoot配置连接池
内置的连接池 目前Spring Boot中默认支持的连接池有dbcp,dbcp2, tomcat, hikari三种连接池. 数据库连接可以使用DataSource池进行自动配置. 由于Tomcat数 ...
最新文章
- linux下tar命令详解
- docker网络问题解决办法“大全”:关于宿主机访问不了docker容器中web服务,或者容器内访问不了外网的问题的解决办法
- 2020年PHP中级面试知识点及答案
- 计算机网络第4版潘爱民_【每日一题笔试】第 25 天
- endnote使用经验总结
- Origin一键复制粘贴,也能批量更改图片格式
- nn.Sequential(*modules)
- linux内核配置参考,[转]Linux内核配置选项 参考(3)
- Jetson Nano安装pytorch 基于torch1.6和torchvision0.7
- 如何快速重置OUTLOOK2013,2016到初始配置状态,outlook 修改数据文件位置
- linux在当前目录下打开终端,linux - 终端:在窗口中打开当前路径? - Ubuntu问答...
- 第三章CDMA的原理与应用(2)
- 华为JAVA编程规范
- 轻轻松松背单词软件测试,扇贝单词历史版本
- 深度学习模型训练神器之wandb
- 紫光服务器型号,紫光新华三全新HPE Gen10系列服务器响彻“云”端
- 二、Nio之Channel
- 华为OD机试 - 荒地(Java JS Python)
- 已解决SyntaxError:expected ‘:‘
- Excel2010数据透视表1
热门文章
- dotNetFx40_Client_x86_x64和dotNetFx40_Full_x86_x64这两个有什么区别?两个都要安装还是安装其中一个?...
- 进度猫教你如何做出高效可行的项目计划
- hdu1869 六度分离(Floyd)
- html文档也称为,文档表示HTML文件,文档中的______________被称为元素
- java 内存 pdf_jvm内存模型高清版.pdf
- 计算机网络分布线图学校,【案例分享】某学院新校区综合布线系统拓扑图
- 中国直接染料市场趋势报告、技术动态创新及市场预测
- cocos3D 教程
- vue 滑动组件_轻巧的Vue滑动组件
- 2019 年最精彩 AI 论战:李飞飞VS《未来简史》作者赫拉利!