• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Tomcat5+Mssql server 2000数据库连接池配置之旅

    Tomcat相信大家已经很熟悉了,作为一种免费而强大的java web server,得到了很多java爱好者的青睐,最新版本的tomcat5支持servlet2.4和jsp2.0,今天我将采用Tomcat5和Ms sqlserver 000一起来开始数据库连接池配置之旅。
    需要的准备
    1、jdk 我使用的版本1.4.01
    2、Tomcat 5 我使用的是5.0.16版本 下载地址:http://jakarta.apache.org/site/binindex.cgi
    3、Mssql server 2000 数据库
    4、Mssql server 2000的官方jdbc driver ,可以到微软的官方网站免费下载

    好了在安装完上面的软件之后,就进入配置实战了:)

    一、找到jdbc的安装目录,把lib目录下面的msbase.jar和mssqlserver.jar、msutil.jar三个文件一起copy到$CATALINA_HOME/common/lib/($CATALINA_HOME代表的是你的tomcat5的安装目录)

    二、用文本编辑器,我这是使用editplus(她可是我的挚爱奥)打开$CATALINA_HOME/conf/server.xml文件,找到配置context的地方,把下面的代码
    粘贴到文件里面

    Context path="/DBTest" docBase="D:\rautinee work\db\"
           debug="5" reloadable="true" crossContext="true">

     Logger className="org.apache.catalina.logger.FileLogger"
                prefix="localhost_DBTest_log." suffix=".txt"
                timestamp="true"/>

     Resource name="jdbc/TestDB"
                  auth="Container"
                  type="javax.sql.DataSource"/>

     ResourceParams name="jdbc/TestDB">
       parameter>
         name>factory/name>
         value>org.apache.commons.dbcp.BasicDataSourceFactory/value>
       /parameter>

       !-- Maximum number of dB connections in pool. Make sure you
            configure your mysqld max_connections large enough to handle
            all of your db connections. Set to 0 for no limit.
            -->
       parameter>
         name>maxActive/name>
         value>100/value>
       /parameter>

       !-- Maximum number of idle dB connections to retain in pool.
            Set to 0 for no limit.
            -->
       parameter>
         name>maxIdle/name>
         value>30/value>
       /parameter>

       !-- Maximum time to wait for a dB connection to become available
            in ms, in this example 10 seconds. An Exception is thrown if
            this timeout is exceeded.  Set to -1 to wait indefinitely.
            -->
       parameter>
         name>maxWait/name>
         value>10000/value>
       /parameter>

       !-- MSSQLserver dB username and password for dB connections  -->
       parameter>
        name>username/name>
        value>sa/value>
       /parameter>
       parameter>
        name>password/name>
        value>/value>
       /parameter>

       !-- Class name for mssqlserver JDBC driver -->
       parameter>
          name>driverClassName/name>
          value>com.microsoft.jdbc.sqlserver.SQLServerDriver/value>
       /parameter>

       !-- The JDBC connection url for connecting to your mssqlserver dB.-->
       parameter>
         name>url/name>
         value>jdbc:microsoft:sqlserver://localhost:1433;databasename=Northwind/value>
       /parameter>
     /ResourceParams>
    /Context>

    注意:我本地的数据库的sa的密码为空,数据库使用的是Northwind,我的目录名DBTest,他的目录是D:\rautinee work\db\

    打开DBTest下面的web.xml文件,用下面的代码替换原来的内容

    ?xml version="1.0" encoding="ISO-8859-1"?>
       !DOCTYPE web-app PUBLIC
       "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
       "http://java.sun.com/dtd/web-app_2_3.dtd">
    web-app>
     description>MSSql server Test App/description>
     resource-ref>
         description>DB Connection/description>
         res-ref-name>jdbc/TestDB/res-ref-name>
         res-type>javax.sql.DataSource/res-type>
         res-auth>Container/res-auth>
     /resource-ref>
    /web-app>

    ok,配置完成,下面的工作是需要编写两个文件测试一下,连接是否成功。

    这里我用了http://jakarta.apache.org上面的例子

    首先是bean文件

    package foo;

    import javax.naming.*;
    import javax.sql.*;
    import java.sql.*;

    public class DBTest {

     String foo = "Not Connected";
     int bar = -1;

     public void init() {
       try{
         Context ctx = new InitialContext();
         if(ctx == null )
             throw new Exception("Boom - No Context");

         DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/TestDB");

         if (ds != null) {
           Connection conn = ds.getConnection();

           if(conn != null)  {
               foo = "Got Connection "+conn.toString();
               Statement stmt = conn.createStatement();
               ResultSet rst =
                   stmt.executeQuery("select * from orders");
               if(rst.next()) {
                  foo=rst.getString("CustomerID");
                  bar=rst.getInt("OrderID");
               }
               conn.close();
           }
         }
       }catch(Exception e) {
         e.printStackTrace();
       }
    }

    public String getFoo() { return foo; }
    public int getBar() { return bar;}
    }


    然后是index.jsp文件

    html>
     head>
       title>DB Test/title>
     /head>
     body>

     %
       foo.DBTest tst = new foo.DBTest();
       tst.init();
     %>

     h2>Ms sql server 2000 java search Results/h2>
       Foo %= tst.getFoo() %>br/>
       Bar %= tst.getBar() %>

     /body>
    /html>
    'www.knowsky.com

    编译运行,如果不出意外,应该检索到一条记录,

    我的ie中显示的是
    Ms sql server 2000 java search Results
    Foo VINET
    Bar 10248

    ok,配制成功!

    参考文档:
    http://jakarta.apache.org/tomcat/tomcat-5.0-doc/jndi-datasource-examples-howto.html 上面有mysql和oracle8i的连接教程,有兴趣的朋友可以上去看一下。

    作者 海仔  email:rautinee@21cn.com  http://www.tryitsoft.com

    您可能感兴趣的文章:
    • java配置数据库连接池的方法步骤
    • mysql数据库连接池配置教程
    • asp.net 数据库连接池浅析
    • Tomcat 5.5 数据库连接池配置
    • .NET 数据库连接池
    • .net数据库连接池配置技巧(默认值)
    • eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
    • java配置dbcp连接池(数据库连接池)示例分享
    上一篇:深入剖析JSP和Servlet对中文的处理
    下一篇:改变JSP的文件后缀
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Tomcat5+Mssql server 2000数据库连接池配置之旅 Tomcat5+Mssql,server,2000,数据库,