• 在tomcat下context.xml中配置各种数据库连接池


    在tomcat下context.xml中配置各种数据库连接池  

    2008-06-25 16:06:02|  分类: struts |  标签: |字号大中小 订阅

     
     

     

    Tomcat6的服务器配置文件放在 ${tomcat6}/conf 目录底下。我们可以在这里找到 server.xml  context.xml。当然,还有其他一些资源文件。但是在在本文中我们只用得上这两个,其他的就不介绍了。

    1.   首先,需要为数据源配置一个JNDI资源。我们的数据源JNDI资源应该定义在context元素中。在tomcat6版本中,context元素已经从server.xml文件中独立出来了,放在一个context.xml文件中。因为server.xml是不可动态重加载的资源,服务器一旦启动了以后,要修改这个文件,就得重启服务器才能重新加载。而context.xml文件则不然,tomcat服务器会定时去扫描这个文件。一旦发现文件被修改(时间戳改变了),就会自动重新加载这个文件,而不需要重启服务器。我们当然推荐把应用需要的JNDI资源配置在context.xml文件中,而不是server.xml文件中。

    1、首先,将数据库的驱动程序copytomcat6.0\lib下,这一部是关键,如果没有copy 当运行程序的时候后报-找不到驱动-的异常。

    2、将下面的代码放到Tomcat 6.0\conf\context.xml中间,如:

    <Context reloadable="true">

    <Resource

    name="jdbc/数据库名"

    type="javax.sql.DataSource"

    maxActive="100"

    maxIdle="30"

    maxWait="5000"

    username="用户名"

    password="密码"

    driverClassName="数据库的驱动"

    url="数据库的连接地址" />

    </Context>

    解释:(100 30 5000 为上面的数据)

    maxActive="最大可以有100名用户连接数据源"

    maxIdle="如果没有用户连接,空出30个连接等待用户连接"

    maxWait="如果已连接用户5000秒内没有再次连接数据源,则放弃此连接"

    完成这两部,数据源就可以用了。

     

    另外,也可以在项目root下的WEB-INF下新建context.xml进行配置

    <?xml version="1.0" encoding="UTF-8"?>

    <Context>/////直连

    <Resource

    name="jdbc/book"

    type="javax.sql.DataSource"

    password=""

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

    maxIdle="5"

    maxWait="5000"

    username="sa"

    url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=book"////直连数据源

    maxActive="10"/> 

    </Context>

    <!-->

    <Context>////桥连

    <Resource

    name="jdbc/book"

    type="javax.sql.DataSource"

    password=""

    driverClassName="sun.jdbc.odbc.JdbcOdbcDriver"

    maxIdle="2"

    maxWait="5000"

    username="sa"

    url="jdbc:odbc:bb"///桥连的数据源

    maxActive="4"/>

    <WatchedResource>C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\context.xml</WatchedResource>

    </Context>

    <!-->

     

    直接在Context文件中加入入:

    <Resource

    name="jdb/dbsource"

    type="javax.sql.DataSource"

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

    maxIdle="2"

    maxWait="5000"

    url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=jspdev"

    maxActive="4"/>

    username="he"

    password="he"

     

    通过javajndi就可以了

    InitialContext initCtx = new InitialContext();
           DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/
    数据库名");
           Connection conn = ds.getConnection();

    以下是各种数据库的配置

    1.sql2000

    <Resource
     name="jdbc/
    数据库名"

    type="javax.sql.DataSource"

    maxActive="100"

    maxIdle="30"

    maxWait="5000"

    username="用户名"

    password="密码"

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

    url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=数据库名"
    />

    2.oracle

    <Resource 
    name="jdbc/
    数据库名"
    type="javax.sql.DataSource"
    maxActive="100"
    maxIdle="30" 
    maxWait="5000"
    username="
    用户名
    password="
    密码
    driverClassName="oracle.jdbc.driver.OracleDriver" 
    url="jdbc:oracle:thin:@127.0.0.1:1521:ora9"
    />

    3.mysql

    <Resource name="jdbc/mysql"
    auth="Container"
    type="javax.sql.DataSource" //
    资源类型
    driverClassName="org.gjt.mm.mysql.Driver"
    url="jdbc:mysql://localhost/
    数据库名
    username="
    用户名"
    password="
    密码"
    maxActive="100" //
    最大连结数
    maxIdle="30" //
    最大空闲时间,0为无限制
    maxWait="10000"/> //
    建立连接的的最大等待时间

  • 相关阅读:
    hdu 3666 差分约束系统
    hdu 1198农田灌溉
    常微分方程(阿諾爾德) Page 45 相空間,相流,運動,相曲線 註記
    高等微積分(高木貞治) 1.4節 例2
    常微分方程(阿諾爾德) Page 45 相空間,相流,運動,相曲線 註記
    解析函數論 Page 29 命題(2) 函數模的有界性
    高等微積分(高木貞治) 1.4節 例2
    解析函數論 Page 29 命題(1) 有界閉集上的一致連續性
    解析函數論 Page 29 命題(3) 模的下界的可達性
    解析函數論 Page 29 命題(2) 函數模的有界性
  • 原文地址:https://www.cnblogs.com/zhwl/p/2828119.html
Copyright © 2020-2023  润新知