Tomcat5.0.19與oracle8.1.7串連池配置指南

來源:互聯網
上載者:User
oracle
作者:Junsan Jin



日期:2003-12-22



版本:1.2 2005-4-4



信箱:junsan21@126.com ; junnef21@sohu.com



Blog:http://blog.csdn.net/junnef



聲明:本人保留本文的所有權利。




 


第一部分:準備工作:




 


第一步:



       正確安裝Oracle8.1.7資料庫,正確建立一個開發使用的資料庫,如當前所使用的資料庫為192.168.0.1:1521中的dbserver資料庫,使用者erp。




 


第二步:



正確安裝tomcat5.0.19。




 


第二部分:正式配置工作




 


第一步:



       找到資料庫的驅動程式classes12.zip包,將其重新命名為classes12.jar,放到%TOMCAT_HOME%/common/lib下。




 


第二步:



       在%TOMCAT_HOME%/webapps目錄下建立一個DBTest目錄,並在其下建立一個WEB-INF目錄。




 


第三步:



       在%TOMCAT_HOME%/conf目錄下找到server.xml檔案,找到類似如下的配置部分:




 


<Host name="localhost" debug="0" appBase="webapps"



                 unpackWARs="true" autoDeploy="true"



                xmlValidation="false" xmlNamespaceAware="false">




 


在與之對應的</host>標誌之中加入如下配置資訊:




 


<Context path="/DBTest" docBase="DBTest"



                      debug="5" reloadable="true" crossContext="true">




 


<Logger className="org.apache.catalina.logger.FileLogger"



             prefix="localhost_DBTest_log." suffix=".txt"



timestamp="true"/>




 


<Resource name="jdbc/myoracle" auth="Container"



              type="javax.sql.DataSource"/>



<ResourceParams name="jdbc/myoracle">



<parameter>



    <name>factory</name>



    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>



</parameter>



 <parameter>



    <name>driverClassName</name>



    <value>oracle.jdbc.driver.OracleDriver</value>



</parameter>



<parameter>



    <name>url</name>



    <value>jdbc:oracle:thin:@192.168.0.1:1521:dbserver</value>



</parameter>



<parameter>



    <name>username</name>



    <value>erp</value>



</parameter>



<parameter>



    <name>password</name>



    <value>erp</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>




 


第四步:



在當前DBTest的目錄下的WEB-INF檔案夾下,建立一個web.xml檔案,在<web-app></web-app>標記之間加入如下代碼:




 


<resource-ref>



 <description>Oracle Datasource example</description>



 <res-ref-name>jdbc/myoracle</res-ref-name>



 <res-type>javax.sql.DataSource</res-type>



 <res-auth>Container</res-auth>



</resource-ref>




 


建立的檔案需要有:




 


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




 


說明。




 


完整檔案如下:



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



<resource-ref>



 <description>Oracle Datasource example</description>



 <res-ref-name>jdbc/myoracle</res-ref-name>



 <res-type>javax.sql.DataSource</res-type>



 <res-auth>Container</res-auth>



</resource-ref>



</web-app>




 


第五步:



建立一個測試檔案放到DBTest目錄下:DBTest.jsp



<%@ page import="java.sql.*"%>



<%@ page import="javax.sql.*"%>



<%@ page import="javax.naming.*"%>



<%



  String foo = "Not Connected";



  System.out.println("###"+foo);



  int bar = -1;




 


try{



   Context initContext = new InitialContext();



   System.out.println("###" + initContext);



  Context envContext  = (Context)initContext.lookup("java:/comp/env");



  System.out.println("###"+ envContext);



  DataSource ds = (DataSource)envContext.lookup("jdbc/myoracle");



  System.out.println("###" + ds);




 



 


      if (ds != null) {



        Connection conn = ds.getConnection();



        System.out.println("###" + conn);



             



        if(conn != null)  {



            foo = "Got Connection "+conn.toString();



            Statement stmt = conn.createStatement();



            ResultSet rst =



                stmt.executeQuery(



                  "select * from cc_tab_kucun");// cc_tab_kucun可以是任意一個表名



            if(rst.next()) {



               foo=rst.getString(1);



               //bar=rst.getInt(3);



            }



            conn.close();



        }



      }



    }catch(Exception e) {



      e.printStackTrace();



    }



%>



 <html>



  <head>



    <title>DB Test</title>



  </head>



  <body>




 


  <h2>Results</h2>



    Foo <%= foo %><br/>



    Bar <%=bar %>




 


  </body>



</html>




 


在IE中輸入http://localhost:8080/DBTest/DBTest.jsp,如果正常運行顯示類似如下所示:


Results


Foo 3980Bar –1




 


則說明成功。


相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。