`
icyheart
  • 浏览: 777508 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在Tomcat中配配置数据源

    博客分类:
  • J2EE
阅读更多

Tomcat本身不具备处理提供数据源的能力。借助于一些开源数据源实现,如:DBCP和C3P0等。

一、在http://commons.apache.org/可下载这些是Tomcat提供配置数据源所需的类库。
注意:Tomcat5.5以上标准版本自带dbcp,放在$Tomcat\common\lib目录;

下载三个文件后,将三个文件解压到Tomcat/common/lib,
1.The DBCP Component
commons-dbcp-1.2.1.jar
http://commons.apache.org/dbcp/

2.The Pool Component 1.2.jar
commons-pool-1.2.jar
http://commons.apache.org/pool/

3.Commons Collections 3.1
commons-collections-3.1.jar
http://commons.apache.org/collections/


There are several examples  of using DBCP available.
http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/doc/

4、把数据库JDBC驱动拷贝到%TOMCAT_HOME%/common/lib和
                           %TOMCAT_HOME%/webapps/yourweb/WEB-INF/lib下(我的web文件夹名字叫quickstart)

二、

   1.  SQL server2000
 <Resource
  name="jdbc/quickstart"
  type="javax.sql.DataSource"
  password="123456"
  driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
  maxIdle="2"
  maxWait="5000"
  username="sa"
  url="jdbc:microsoft:sqlserver://localhost;DatabaseName=quickstart"   maxActive="4"/>

   2.MySQL
   <Resource
        name="jdbc/hnport"
        type="javax.sql.DataSource"
        password="sharker"
        driverClassName="com.mysql.jdbc.Driver"
        maxIdle="2"
        maxWait="5000"
        username="root"
        url="jdbc:mysql://localhost:3306/hnport"
        maxActive="4"/>

三、按数据源使用范围来分数据源配置两个方法:

方法一:所用Web可使用(全局数据源)
 
  1、修改%TOMCAT_HOME%/conf/server.xml文件,在<GlobalNamingResources></GlobalNamingResources>之间加入如下代码:
       <Resource
        name="jdbc/hnport"
        type="javax.sql.DataSource"
        password="sharker"
        driverClassName="com.mysql.jdbc.Driver"
        maxIdle="2"
        maxWait="5000"
        username="root"
        url="jdbc:mysql://localhost:3306/hnport"
        maxActive="4"/>
  2、修改%TOMCAT_HOME%/webapps/yourweb/WEB-INF下的web.xml文件,在<web-app></web-app>之间添加以下内容
  
  <resource-ref>
  <description>mysql Connection</description>
  <res-ref-name>jdbc/hnport</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
  </resource-ref>

 3、在%TOMCAT_HOME%/conf/Catalina/localhost下新建一个与你web文件夹同名的xml文件(我的是quickstart.xml)
  
  这一步非常重要,如果没有这步就会出错,会出现org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/hnport" reloadable="true" docBase="d:\hnport\WebRoot" workDir="d:\hnport\work">
  <Resource name="jdbc/hnport"
   type="javax.sql.DataSource"
   password="sharker"
   driverClassName="com.mysql.jdbc.Driver"
   maxIdle="2"
   maxWait="5000"
   username="root"
   url="jdbc:mysql://localhost:3306/hnport"
   maxActive="4"/>
 </Context>

方法二:只有某个Web可用(局部数据源
        1.该方法不会造成系统混乱,只需修改%TOMCAT_CAT%\conf\Cattalin\localhost下的Web配置文件。如:hnport.xml

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/hnport" reloadable="true" docBase="d:\hnport\WebRoot" workDir="d:\hnport\work">
  <Resource name="jdbc/hnport"
   type="javax.sql.DataSource"
   password="sharker"
   driverClassName="com.mysql.jdbc.Driver"
   maxIdle="2"
   maxWait="5000"
   username="root"
   url="jdbc:mysql://localhost:3306/hnport"
   maxActive="4"/>
 </Context>


 2、修改%TOMCAT_HOME%/webapps/yourweb/WEB-INF下的web.xml文件,<web-app> </web-app>之间添加以下内容
  
  <resource-ref>
  <description>mysql Connection</description>
  <res-ref-name>jdbc/hnport</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
  </resource-ref>

<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->

 



四.测试
<%@page contentType="text/html;charset=big5"%>
<%@page import="java.sql.*"%>
<%@page import="javax.sql.*" %>
<%@page import="javax.naming.*" %>
<%
    try {
        Context initContext = new InitialContext();
        Context envContext  =
            (Context)initContext.lookup("java:/comp/env");
        DataSource ds =
            (DataSource)envContext.lookup("jdbc/hnport");
        Connection conn = ds.getConnection();
 
        if(!conn.isClosed())
           
            out.println("数据库连接测试成功");
        conn.close();
    }
    catch(SQLException e) {
        out.println(e.toString());
    }
%>

分享到:
评论

相关推荐

    tomcat中配置数据源

    本篇文章将深入探讨如何在Tomcat中配置数据源,以便于应用程序高效、稳定地访问数据库。 数据源(DataSource)是Java EE中用于管理数据库连接的接口,它提供了一种在多线程环境中安全、有效地管理和重用数据库连接...

    tomcat配数据源

    当我们需要在Tomcat中配置数据源时,通常会使用Apache的DBCP(Basic Database Connection Pool)组件,这是一个轻量级且高效的数据库连接池。 DBCP是Apache Commons项目的一部分,它提供了数据库连接池的功能,允许...

    tomcat5.5配数据源必须的三个JAR包.zip

    用tomcat工具配置数据源比如名为mysql。则在meta-inf/context.xml中写上&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;&lt;br&gt;&lt;Context&gt;&lt;br&gt; &lt;ResourceLink&lt;br&gt; name=\"mysql\" global=\"mysql\" type=\"javax....

    为tomcat服务器配置https,tomcat需要设置的server.xml与web.xml配置

    在IT行业中,安全通信是至关重要的,特别是在处理敏感数据时,如用户登录凭据或交易信息。HTTPS(HyperText Transfer Protocol Secure)协议是HTTP的安全版本,它通过SSL/TLS(Secure Sockets Layer/Transport Layer...

    memcached及tomcat相配的jar

    标题中的“memcached及tomcat相配的jar”指的是将Memcached集成到Tomcat环境中,以便为运行在Tomcat上的Java Web应用提供缓存服务。这个过程通常涉及到以下几个关键步骤: 1. **获取兼容的Memcached客户端库**:...

    struts框架中数据源的配置

    本文将详细介绍如何在Struts框架中配置数据源,以实现更灵活、高效的数据库访问机制。我们将以一个具体的例子来说明这一过程——在Struts 1.1框架中配置SQL Server数据源。 #### 二、配置环境准备 在开始配置数据...

    PHP-5.2.1+tomcat+php配置+20个例子

    配置过程包括安装PHP环境,设置PHP-CGI,然后在Tomcat服务器中配置相应的代理规则。 3. **PHP配置**: 配置PHP涉及修改`php.ini`文件,调整各种配置选项,如错误报告级别、内存限制、上传文件大小限制等。此外,还要...

    Tomcat和iis发布Cesium地形数据教程及依赖库.zip

    在本教程中,我们将深入探讨如何使用Tomcat和IIS服务器发布Cesium地形数据,以及相关的依赖库。Cesium是一个强大的开源JavaScript库,用于在Web上创建交互式的3D地球和空间应用程序。CesiumLab是Cesium的配套工具,...

    JDK1.7+tomcat7.0+mysql5.5.29安装配置图解

    虽然原内容中未详细提及MySQL的安装配置,但在典型的Java Web应用环境中,MySQL作为数据库服务是不可或缺的。以下为简要指导: 1. **MySQL安装**:下载MySQL安装包,按照向导完成安装,选择合适的组件和服务类型。 ...

    Tomcat与Java Web开发技术详解 第二版配套光盘源码

    书中源代码涵盖了这些技术的实例,让读者能够亲手实现网页动态交互、数据持久化、会话管理等功能。 3. **Servlet**:Servlet是Java平台上的服务器端组件,用于扩展Web服务器的功能。通过源代码,读者可以学习到...

    iOS企业级应用的tomcat服务器和客户端配置

    在iOS 7.1及之后的版本中,苹果为了提高用户数据的安全性,对HTTP请求进行了限制,强制要求使用HTTPS协议,即必须配置有效的SSL证书。对于企业级应用,尤其是需要在内部网络中分发的应用,这种变化带来了一定的挑战...

    Tomcat均衡负载,集群配置

    3. **应用服务器配置**:在每个Tomcat实例的server.xml中,需要添加适当的集群和负载均衡配置。 4. **调整负载策略**:Tomcat可以通过`&lt;LoadBalancer&gt;`元素设定负载分配策略,如轮询、随机或基于权重。 **Apache与...

    how tomcat work_中文版(源码)

    3. **路径匹配**:根据请求的URI,Tomcat查找对应的Web应用程序,并在WEB-INF/web.xml配置文件中匹配Servlet的映射规则。 4. **创建Servlet实例**:如果请求的Servlet尚未初始化,Tomcat会根据Servlet配置创建一个...

    apache-tomcat-6.0.39

    在本文中,我们将深入探讨Apache Tomcat 6.0.39的相关知识点,包括其核心功能、配置、安装与管理,以及它在Java Web开发中的重要性。 一、Apache Tomcat核心功能 1. **Servlet容器**:Apache Tomcat的主要职责是...

    tomcat6 64位 tomcat6 32位

    《深入理解Tomcat6:32位与64位的区别及应用》 Tomcat作为Apache软件基金会的一个开源项目,是Java Servlet和Java...在安装和使用Tomcat6的过程中,理解这些基本概念和注意事项,将有助于提升Web应用的稳定性和效率。

    flex+myeclipse+tomcat+mysql环境搭配

    这通常涉及导入相关库到Tomcat,以及在MyEclipse中配置服务器连接。 7. **安装MySQL**:下载MySQL安装包,完成安装后创建一个新的数据库,设置用户名和密码。在MyEclipse中,通过"Data Tools" -&gt; "Database ...

    Tomcat(一) Tomcat是什么:Tomcat与Java技术 Tomcat与Web应用 以及 Tomcat基本框架及相关配

    Tomcat的安装目录结构包含多个子目录,如`conf`用于存放配置文件,`webapps`用于部署Web应用程序,`logs`存储日志文件,`temp`保存临时文件,`lib`包含运行所需的库文件等。每个目录都有其特定的用途,理解和配置...

    apache+tomcat+geoserver地图配置文档.docx

    完成上述步骤后,我们就可以在GeoServer管理界面中上传地理空间数据,创建工作空间,配置数据存储,发布WMS(Web Map Service)和WFS(Web Feature Service),并利用OpenLayers等工具进行地图展示和交互。...

    tomcat8,jdk8

    2. 设置JDK版本:在Tomcat的配置文件(如`bin/catalina.sh`或`bin/catalina.bat`)中,指定使用JDK 8的位置,通常通过设置`JAVA_HOME`环境变量实现。 3. 配置内存参数:根据应用需求,可能需要调整JVM的内存分配,以...

Global site tag (gtag.js) - Google Analytics