TOMCAT 5+MSSQL数据库连接池配置

TOMCAT 5+MSSQL数据库连接池配置

 


1、把数据库JDBC驱动拷贝到%TOMCAT_HOME%/common/lib和%TOMCAT_HOME%/webapps/yourweb/WEB-INF/lib下
   (我的web文件夹名字叫query)
  
2、修改%TOMCAT_HOME%/conf/server.xml文件 ,在</HOST>前添加


<Context path="/query" docBase="query" debug="0"                 reloadable="true" crossContext="true">  
<Resource name="jdbc/query" auth="Container" type="javax.sql.DataSource"/>  
     <ResourceParams name="jdbc/query"> 
         <parameter>  
               <name>factory</name>  
                   <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>  
          </parameter>    
                 <parameter>  
     <name>driverClassName</name>  
     <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>  
          </parameter>    
      <parameter> 
                  <name>url</name>  
                  <value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=hsqrydb</value>    
        </parameter>  
          <parameter>      
                             <name>username</name>  
                        <value>sa</value>    
                 </parameter>  
     <parameter>      
                 <name>password</name>      
           <value>sa</value> 
     </parameter>  
          <parameter>      
           <name>maxActive</name>      
     <value>20</value>    
      </parameter>
      <parameter>  
                  <name>maxIdle</name>      
     <value>10</value>    
      </parameter>    
      <parameter> 
            <name>maxWait</name>      
     <value>-1</value>    
      </parameter>  
        </ResourceParams>    
     </Context>

 


3、修改  %TOMCAT_HOME%/webapps/yourweb/WEB-INF/web.xml的内容如下:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
    version="2.4">
<display-name>Welcome to Tomcat</display-name>
  <description>
       query
  </description>
 <resource-ref>
  <description>sqlserverDB Connection</description>
  <res-ref-name>jdbc/query</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
  </resource-ref>

</web-app>


4、在对应的sql server 库里面建立对应数据库 hsqrydb 
   然后建立相应的表book
   use  hsqrydb;
   create table book(bookId varchar(50),bookName varchar(50),publisher varchar(100),price float,constraint pk_book primary key(bookId));
   insert into book values('001-22-23-1','insur_info','HSCLIC',59.0);
5、写对应的测试程序代码如下 位置为%TOMCAT_HOME%/webapps/yourweb 目录下
   可以命名为:testds.jsp

   代码如下:
    <!--测试数据源-->
 <%@ page contentType="text/html; charset=gb2312" %>
 <%@ page import="javax.naming.Context" %>
 <%@ page import="javax.sql.DataSource"%>
 <%@ page import="javax.naming.InitialContext"%>
 <%@ page import="java.sql.*"%>

 <%
   DataSource ds = null;
   try{
     Context initCtx = new InitialContext();
     Context envCtx = (Context) initCtx.lookup("java:comp/env");
    //从Context中lookup数据源。
     ds = (DataSource)envCtx.lookup("jdbc/query");
 if(ds!=null)
 {
 out.println("已经获得DataSource!");
 out.println("<br>");
 Connection conn = ds.getConnection();
 Statement stmt=conn.createStatement();
 ResultSet rst=stmt.executeQuery("select * from book");
 out.println("以下是从数据库中读取出来的数据");
 while(rst.next())
 {
 out.println("bookName:"+rst.getString("bookName"));
 out.println("<br>"); 
 }
 }
 else
  out.println("连接失败!");
 }
 catch(Exception ne)
 {
  out.println(ne);
 }
 %>

6、这些都配置完毕后,重新启动tomcat ,在浏览器中输入
    http://127.0.0.1:8080/query/testds.jsp

 返回信息为
 已经获得DataSource!
    以下是从数据库中读取出来的数据   bookName:insur_info

 说明配置成功。


 在实际配置中要注意的几点是:
 1、注意JNDI NAME  server.xml中的一定要与web.xml 还有调用的testds.asp中的一致
    server.xml
      ...
    <Resource name="jdbc/query" auth="Container" type="javax.sql.DataSource"/>  
     <ResourceParams name="jdbc/query"> 
  ....
   web.xml
    ..
        <res-ref-name>jdbc/query</res-ref-name>
    ....
    testds.jsp
    ...
    ds = (DataSource)envCtx.lookup("jdbc/query");
  ....

 2、看了有些资料中说要在%TOMCAT_HOME%/conf/Catalina/localhost/目录下配置对应的.xml文件
    其实如果你在server.xml中的<context>...</context>中象我上面的配置完整的也就不需要在对应目录下配置了。
    也可以说那是另一种配置方式吧
    那种方法是在    <GlobalNamingResources>。。。 </GlobalNamingResources>中间设置 但是必须要在
    %TOMCAT_HOME%/conf/Catalina/localhost/下建立对应的xml文件 
    这个文件里面对应的内容写上<context>...</context>,其余的都一样的
    这种方法网站上讲到也很多 我就不多说了

 


   
 
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值