Tomcat7连接池配制方法

有两种方法:

1.简便配制方法
在D:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\server.xml文件中的<Host></Host>标签之间加入如下的Context代码

<Context path="/test" docBase="test" debug="0" reloadable="true" crossContext="true">
    <Resource name="jdbc/test" auth="Container"  type="javax.sql.DataSource" maxActive="10" maxIdle="5" maxWait="10000" username="sa" password="sasa"  driverClassName="net.sourceforge.jtds.jdbc.Driver" url="jdbc:jtds:sqlserver://localhost:1433/mydb"/>
</Context>

2.官方推荐方法

首先配置tomcat下的conf下的context.xml文件,在之间添加连接池如下:

    <Resource name="jdbc/test" auth="Container"  type="javax.sql.DataSource" maxActive="10" maxIdle="5" maxWait="10000" username="sa" password="sasa"  driverClassName="net.sourceforge.jtds.jdbc.Driver" url="jdbc:jtds:sqlserver://localhost:1433/test"/>

然后配置你的应用下的web.xml中的之间加入:

    <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/test</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>

-----------------------------------------------------------

测试JSP页面代码:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>Tomcat7连接池配制测试</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
    <%
        try {
            DataSource ds = null;
            InitialContext ctx = new InitialContext();
            ds = (DataSource) ctx.lookup("java:comp/env/jdbc/test");
            Connection conn = ds.getConnection();
            Statement stmt = conn.createStatement();
            String strsql = " select * from T1";
            ResultSet rs = stmt.executeQuery(strsql);
            while (rs.next()) {
                out.println(rs.getString(1) + "....." + rs.getString(2) + "</br>");
            }
            stmt.close();
            rs.close();
            conn.close();

        } catch (SQLException se) {
            out.print("异常:" + se.toString());
        }
    %>  
</body>
</html>

				
时间: 2024-10-22 06:27:18

Tomcat7连接池配制方法的相关文章

go语言操作redis连接池的方法_Golang

本文实例讲述了go语言操作redis连接池的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: func newPool(server, password string) *redis.Pool {     return &redis.Pool{         MaxIdle: 3,         IdleTimeout: 240 * time.Second,         Dial: func () (redis.Conn, error) {             c

Tomcat下配置Mysql的连接池

1.在$CATALINA_HOME/conf/server.xml中添加配置信息,声明连接池的具体信息,添加内容如下 factory                        org.apache.commons.dbcp.BasicDataSourceFactory                        maxWait                        5000            maxActive                        20        

14-数据库连接池和jdbc优化

一.数据库连接池 1. 什么是连接池 传统的开发模式下,Servlet处理用户的请求,找Dao查询数据,dao会创建与数据库之间的连接,完成数据查询后会关闭数据库的链接. 这样的方式会导致用户每次请求都要向数据库建立链接而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长.假设网站一天10万访问量,数据库服务器就需要创建10万次连接,极大的浪费数据库的资源,并且极易造成数据库服务器内存溢出.宕机.   解决方案就是数据库连接池 连接池就是数据库连接对象的一个缓冲池 我们可以先创建10个数据

c3p0连接池中获取的Connection对象的close()方法是真的把连接给关闭了?

问题描述 c3p0连接池中获取的Connection对象的close()方法是真的把连接给关闭了? 自己做写了一个管理数据源的DBManager,构想中从数据源里面获取的Connection使用完之后执行close()方法,然后把Connection对象闲置回连接池中. 但是测试出来的结果好像每次执行close()之后connection就销毁了. 代码如下: DBManager.java package ben.DBUtils; import java.sql.Connection; impo

连接池和 Timeout expired异常解决方法

连接池和 timeout expired异常解决方法 你需要保证你每次调用连接的同时都在使用过后通过close()或dispose()对其执行了关闭.最简单的办法就是使用using,将你的连接泄漏方法修改成如下面的代码样式: public void doesnotleakconnections()     {            using (sqlconnection sqlconnection1 = new sqlconnection("server=.sqlexpress ;integr

Tomcat6.0的JNDI使用方法(连接池)

原文http://www.cnblogs.com/shyy/archive/2013/03/12/2956046.html    最近有项目用到JNDI,为了方便的更改数据库和环境,好吧,那我就来学习下,顺便分享下方法,网上的方法乱七八糟,看的我眼都晕了.以下我提供的方法绝对是我本人试过可用的,要不发上来被你看到了,估计会被你骂.囧-- 先让大家看下我的项目图: 一.我们先找到tomcat6.0conf目录下的context.xml更改里面的内容: 1 <?xml version='1.0' e

C/C++语言编写的客户应用为例开发连接池管理的方法

CICS 交易网关(CICS Transaction Gateway,以下简称 CICS TG)是 IBM 针对 CICS 交易服务器(CICS Transaction Server,以下简称 CICS TS)开发的高性能.高安全.高可用性和高扩容能力的接入方式.CICS TG 接受客户应用的请求,然后使用 TCPIP,EXCI 和 IPIC 等连接协议,以http://www.aliyun.com/zixun/aggregation/13996.html">负载均衡和动态选择 CICS

Netty的http client连接池设计

1 复用类型的选型 1.1 channel 复用 多个请求可以共用一个channel 模型如下:                                                特点: callback队列为回调队列. 不同的callback通过一个全局的id进行标识.发送的时候会把该id发到服务端,服务端在回复的时候必须把该id再返回到客户端. 获取连接只需要随机获取一个channel即可,将callback添加到队列里面.  获取连接时消除了锁的竞争,性能高效. 结构简单.  

用连接池提高Servlet访问数据库的效率 (-)

servlet|访问|数据|数据库 Java Servlet作为首选的服务器端数据处理技术,正在迅速取代CGI脚本.Servlet超越CGI的优势之一在于,不仅多个请求可以共享公用资源,而且还可以在不同用户请求之间保留持续数据.本文介绍一种充分发挥该特色的实用技术,即数据库连接池. 一.实现连接池的意义 动态Web站点往往用数据库存储的信息生成Web页面,每一个页面请求导致一次数据库访问.连接数据库不仅要开销一定的通讯和内存资源,还必须完成用户验证.安全上下文配置这类任务,因而往往成为最为耗时的