国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

Tomcat5+Mssql server 2000數(shù)據(jù)庫連接池配置之旅

2020-07-27 21:47:35
字體:
供稿:網(wǎng)友

Tomcat相信大家已經(jīng)很熟悉了,作為一種免費而強大的java web server,得到了很多java愛好者的青睞,最新版本的tomcat5支持servlet2.4和jsp2.0,今天我將采用Tomcat5和Ms sqlserver 000一起來開始數(shù)據(jù)庫連接池配置之旅。
需要的準備
1、jdk 我使用的版本1.4.01
2、Tomcat 5 我使用的是5.0.16版本 下載地址:http://jakarta.apache.org/site/binindex.cgi
3、Mssql server 2000 數(shù)據(jù)庫
4、Mssql server 2000的官方jdbc driver ,可以到微軟的官方網(wǎng)站免費下載

好了在安裝完上面的軟件之后,就進入配置實戰(zhàn)了:)

一、找到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>

注意:我本地的數(shù)據(jù)庫的sa的密碼為空,數(shù)據(jù)庫使用的是Northwind,我的目錄名DBTest,他的目錄是D:/rautinee work/db/

打開DBTest下面的web.xml文件,用下面的代碼替換原來的內(nèi)容

<?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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 盘锦市| 抚宁县| 大同市| 达孜县| 县级市| 托里县| 阿拉善左旗| 成安县| 巨野县| 会宁县| 永济市| 濉溪县| 连城县| 昆明市| 冕宁县| 磴口县| 赤城县| 南皮县| 贡觉县| 乐平市| 屏边| 梁山县| 壶关县| 榆林市| 四平市| 台山市| 化隆| 安徽省| 保康县| 河源市| 凤庆县| 宣武区| 赤城县| 麦盖提县| 华池县| 德昌县| 吉木萨尔县| 灵山县| 鄂州市| 泰宁县| 西平县|