源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-07-26 20:47 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要: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
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部