首页后端开发其他后端知识Tomcat5+Mssql server 2000数据库连接池配置之旅

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

时间2024-02-07 23:07:03发布访客分类其他后端知识浏览697
导读:收集整理的这篇文章主要介绍了Tomcat5+Mssql server 2000数据库连接池配置之旅,觉得挺不错的,现在分享给大家,也给大家做个参考。 Tomcat相信大家已经很熟悉了,作...
收集整理的这篇文章主要介绍了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

您可能感兴趣的文章:
  • MSSQL 2000 使用帮助(sql server简明教程)
  • 简单判断MSSQL数据库版本(2000或者2005)
  • MSSQL2000安全设置图文教程
  • MSSQL  附加数据库提示“错误 823”数据恢复实操

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Tomcat5+Mssql server 2000数据库连接池配置之旅
本文地址: https://pptw.com/jishu/604679.html
改变JSP的文件后缀 JSP 2.1和JSF 1.2规范发布预览版本

游客 回复需填写必要信息