`

Tomcat 6.0,Resin 3.1.6 配置JNDI数据库连接池

阅读更多

2.1.1 Tomcat数据库连接池配置---连接SQL Server2000

(1)打开tomcat 6.0/conf/server.xml,在</Host>前加:

<Context docBase="test" path="/test" reloadable="true" debug=”5” reloadable="true" crossContext="true">
<Resource name="jdbc/sqlserver" auth="Container" type="javax.sql.DataSource"   maxActive="100"

maxIdle="30" maxWait="10000" username="sa" password="1234" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
               url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test" />
</Context>

(2)在webapps/项目名/WEB-INF中的web.xml中之前增加以下配置:

<resource-ref>
        <description>SQL Server Datasource</description>
        <res-ref-name>jdbc/sqlserver</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
</resource-ref>

(3)把以下几个.jar文件复制到tomcat安装目录下的lib文件夹中:

commons-collections-3.1.jar、 commons-dbcp-1.2.1.jar、 commons-pool-1.2.jar、msutil.jar、 msbase.jar、mssqlserver.jar

后面三个是JDBC 数据库驱动,前面三个应该是数据库连接池的包

(4)关键一步:确认sqlserver2000可以远程连接,这除了开放1433端口外还要,升级数据库到sp3或者sp4,否则连接会发出SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket错误。

(5)测试:

编写数据库连接类:

Package com.test;

import java.sql.Connection;

import javax.naming.Context;

import javax.naming.InitialContext;

import javax.sql.DataSource;

public class DBConn {

     public static Connection getConnection() {

         try {

            Context initContext = new InitialContext();

            if (initContext == null)

                throw new Exception("No Context");

            DataSource ds = (DataSource) initContext.lookup("java:comp/env/jdbc/sqlserver");

            if (ds != null) {

                Connection conn = ds.getConnection();

                if (conn != null) {

                    return conn;

                }

            }

        } catch (Exception e) {

 

            e.printStackTrace();

        }

        return null;

    }

}

测试的级jsp页面:

<%@   page contentType="text/html;charset=utf-8"%>

<%@   page import="java.sql.*"%>

<%@   page import="javax.sql.*"%>

<%@   page import="javax.naming.*"%>

<%@   page import="com.test.DBConn"%>

<HTML>

    <HEAD>

       <TITLE>JSP测试页面</TITLE>

    </HEAD>

    <BODY>

       <%

           Connection conn = DBConn.getConnection();

           Statement st = conn.createStatement();

           String sql = "select top 2 * from source";

           ResultSet rs = st.executeQuery(sql);

           while (rs.next()) {

       %>

       第一个字段内容为:<%=rs.getString(1)%>

       第二个字段内容为:<%=rs.getString(2)%>

       <br>

       <%

           }

       %>

       <%

           out.print("使用jdbc驱动操作数据库操作成功");

       %>

       <%

           rs.close();

           st.close();

           conn.close();

       %>

    </BODY>

</HTML>

在Myeclipse中使用数据库连接池,采用外部的tomcat

新建context.xml文件,在META-INF中新建

其内容为:

<Context path="/test" docBase="test" debug="5" reloadable="true"

    crossContext="true">

    <WatchedResource>WEB-INF/web.xml</WatchedResource>

    <Resource name="jdbc/test" auth="Container"

       type="javax.sql.DataSource"

       driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"

       url="jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=tomato"

       username="sa"

       password="funcheer!@#$qwer"

       maxIdle="30"

       maxWait="10000"

       maxActive="100" />

</Context>

在WEB-INF的web.xml中添加如下内容:

<resource-ref>

       <res-ref-name>jdbc/tomato</res-ref-name>

       <res-type>javax.sql.DataSource</res-type>

       <res-auth>Container</res-auth>

    </resource-ref>

最后测试和上面的一样。

2.1.2 resin(resin 3.1.6)数据库连接池配置---sqlserver

在resion/conf/resin.conf文件中,配置一个数所库连接池

<database>

       <jndi-name>jdbc/sqlserver</jndi-name>

       <driver type="com.microsoft.jdbc.sqlserver.SQLServerDriver">

       <url>jdbc:microsoft:sqlserver://localhost:1433;databasename=test</url>

       <user>sa</user>

       <password>1234</password>

              </driver>

       <prepared-statement-cache-size>8</prepared-statement-cache-size>

       <max-connections>20</max-connections>

       <max-idle-time>30s</max-idle-time>

       </database>

将相应的驱动程序放到resin/lib/目录下,应该就是上面提到的驱动程序。

测试网页test.jsp
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%
    DataSource ds = null;
    try{
    InitialContext ctx=new InitialContext();
    ds=(DataSource)ctx.lookup("java:comp/env/jdbc/sqlserver");
    Connection conn = ds.getConnection();
    Statement stmt = conn.createStatement();
    String strSql = " select * from test";
    ResultSet rs = stmt.executeQuery(strSql);
    while(rs.next()){
       out.println(rs.getString(1)+"<br>");                
      }
       rs.close();
    stmt.close();
    conn.close();
    }
    catch(Exception ex){
     ex.printStackTrace();
     out.print(ex.getMessage());
    }
%>

分享到:
评论

相关推荐

    resin3.1.6配置指导

    最新的resin配置指导,新人少点弯路,下了就知道了 Main class: com.caucho.server.resion.Resin 这里多写了一个o 正确的是: Main class: com.caucho.server.resin.Resin

    resin3.1.6破解版本

    resin3.1.6破解版资源,欢迎各位下载 。

    resin-3.1.6.zip

    3. **负载均衡与集群**:Resin 3.1.6支持负载均衡和集群配置,可以在多台服务器之间分配请求,提高系统的可用性和可扩展性。通过 sticky session 和 session复制,可以保证用户会话在集群中的连续性。 4. **Quercus...

    resin Pro 3.1.6 破解版

    resin Pro 3.1.6 破解版

    resin-3.1.6

    Resin 3.1.6是该软件的一个版本,它在开发环境中被广泛使用,因为它的配置过程相对简单,适合快速搭建和管理Java应用程序。 Resin服务器的核心功能包括: 1. **Servlet容器**:Resin作为Servlet容器,能够运行基于...

    resin-pro-3.1.6.tar.gz

    Resin Pro 3.1.6 是一款由 Caucho Technology 开发的高效、轻量级的Java应用服务器,尤其适合用于Web应用的部署和管理。这个版本的压缩包文件 "resin-pro-3.1.6.tar.gz" 通常在Linux环境下使用,因为它与开源操作...

    Eclipse连接MySQL数据库.doc

    本文将详细介绍如何在Eclipse中连接MySQL数据库,包括安装和配置JDK、Tomcat、Eclipse和MySQL,以及使用JDBC连接MySQL数据库的步骤。 一、安装和配置环境 1. 安装JDK1.6:JDK(Java Development Kit)是Java开发...

    Eclipse连接MySQL数据库[参考].pdf

    本文档主要介绍了使用Eclipse连接MySQL数据库的步骤,涵盖了安装JDK、Tomcat、Eclipse、MySQL等软件的步骤,以及在Eclipse中连接MySQL数据库的配置过程。 一、软件安装 1. 安装JDK1.6:JDK是Java开发工具包,包含...

    关于resion3.1.6版本在Eclipse3.2中的配置

    关于resin3.1.6版本在Eclipse3.2中的配置 无插件版 详细说明的开发设置,无插件配置。 很正确,我调试成功了,我也是累的要死找这个东西。可网上说得我头都大了,都是抄来抄去。 如果你是resin新手,看看吧!为...

    richfaces-demo-3.1.6.GA-tomcat6

    richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo...

    各种数据库驱动jar包下载

    3. `mysql-connector-java-5.0.8-bin.jar`、`mysql-connector-java-3.1.11-bin.jar` 和 `mysql-connector-java-3.1.6-bin.jar`:这些都是MySQL数据库的JDBC驱动,用于连接MySQL数据库。版本号不同意味着它们对应的是...

    mysql 配置jar文件

    Apache Commons DBCP(Database Connection Pool)提供了一个数据库连接池,它可以高效管理数据库连接,避免频繁创建和销毁连接导致的性能损耗。而`commons-pool-1.3.jar`是Apache Commons Pool,它是对象池设计模式...

    Eclipse连接MySQL数据库.pdf

    通过以上步骤,我们可以成功地在 Eclipse 中配置好 MySQL 数据库的连接,并且能够执行一些基本的数据库操作,如创建数据库和表等。这对于进行 Java Web 开发或者学习数据库操作来说是非常有用的。需要注意的是,在...

    Eclipse连接MySQL数据库宣贯.pdf

    ### Eclipse连接MySQL数据库知识点详解 #### 一、环境搭建与准备 **1.1 安装JDK1.6** - **目的**:Java Development Kit (JDK) 是开发 Java 应用的基础工具包,本案例中需要安装 JDK1.6。 - **步骤**: - 下载 ...

    cxf-3.1.6的所需要的包

    在这个"**cxf-3.1.6**"的压缩包中,包含了运行CXF Web服务所需的基本组件,使得我们无需使用像Tomcat这样的传统应用服务器,而是可以使用轻量级的Jetty服务器。 CXF 3.1.6是该框架的一个稳定版本,发布于2016年,它...

    minix3.1.6源代码

    10. **编译与构建**:学习如何从源代码编译 Minix 3.1.6,涉及到构建系统和配置脚本,有助于理解软件工程的实践。 通过深入研究 Minix 3.1.6 的源代码,不仅可以学习到操作系统原理,还可以了解软件设计原则和实际...

    Linux运维从入门到高级全套案例v3.rar

    5.3 Tomcat/ Resin JAVA服务器… 5.3.1 Tomcat安装配置… 5.3.2 Tomcat性能优化……… 5.3.3 Resin安装配置… 5.3.4 Resin性能优化…… 5.3.5 Resin多实例配置…… 5.4 Nginx Tomcat动静分离…… 5.5 LNAMP高性能...

    毕业设计:Java项目之jsp家禽养殖管理系统(源码 + 数据库 + 说明文档)

    3.1.6 MySQL数据库 7 3.1.7 My Eclipse平台 7 3.1.8软硬件需求 8 3.2 系统需求 8 第4章 总体设计 9 4.1 系统模块总体设计 9 4.2 数据库设计 10 4.2.1 数据分析 10 4.2.2 数据库的详细设计 11 4.3 本章小结 14 第5章 ...

    libmodbus-3.1.6.tar.gz

    安装libmodbus-3.1.6通常包括解压源代码、配置、编译和安装几个步骤。使用`tar -zxvf libmodbus-3.1.6.tar.gz`解压后,进入目录执行`./configure`、`make`和`sudo make install`,即可完成安装。 5. **应用实例** ...

    libmodbus-3.1.6已修改直接编译

    《深入理解libmodbus-3.1.6:C++环境下的编译实践》 libmodbus是一个开源的库,专为实现Modbus通信协议而设计。它支持多种编程语言,包括C++,并广泛应用于工业自动化、物联网(IoT)设备以及嵌入式系统中。本次我们...

Global site tag (gtag.js) - Google Analytics