JSPCN主页 | JSP空间 | 网站制作 | JSP下载 | JSP论坛 | JSP教程 | 关于JSPCN | 联系我们
JSP虚拟主机,jsp空间,java空间,java虚拟空间,详细请点击进入
做最专业的JSP中文网站 当前位置首页--JSP技术--JSP配置  
文章搜索:
关键字 标题
  
JSP中文网内容管理系统(JCMS)
JSP虚拟主机
网络笔记本
网摘,图片,笔记收藏
虚拟服务器

JSPCN文章目录分类
JSP配置[219]JSP基础[136]
中文问题[69]上传问题[27]
JAVABEAN[46]数据库[212]
文件操作[126]图片声音[17]
JSP其他[57]时间相关[16]
JAVAMAIL[72]STRUTS[144]
开发工具[28]教程系列[157]
JSP实例[89]
JAVA基础[421]APPLET[78]
JAVA网络[179]Applica[115]
Servlet[98]XML[163]
J2ME[257]J2EE[374]
考试相关[63]JAVA线程[90]
EJB[261]Swing[26]
Java API[141]声音图片[28]
异常处理[33]JAVA实例[290]
JAVA类[139]SUN[89]
Hibernate[6]JMX[8]
Spring[34]
本版推荐文章 
本版热点文章 
相关文章链接 
 
在tomcat 5中配置DBCP
作者:     文章来源:
访问次数:198次     加入时间:2007年01月03日
在tomcat 5中配置DBCP(Database Connection Pool)
———— 一个小菜鸟(Treey)在JSP学习中的经验总结

    偶也是JSP的一个初学者,前几天一直被DBCP在tomact 5中的配置问题搞得头都大了两号(注:如变身后的“白精精”)。经过看贴子、看文档,终于基本明白了一些,现将自己的一个例子与众多像偶一样的小菜鸟们分享,希望能让大家少在这配置方面“浪费”太多的时间,也希望我们这些小菜鸟能早是飞上“蓝天”。

首先,在Oracle中建立一个名为BOOK的Table,SQL如下:
create table BOOK(BOOK_CODE CHAR(5) NOT NULL,
    COST NUMBER(7,2));

插入几条记录:
insert into BOOK VALUES(B0020,13.50); 
insert into BOOK VALUES(B0220,12.00);
……

数库准备完毕!

偶的tomcat安装路径为D: omcat5,在D:下的webapps目录下建立自己的web application目录。偶建的目录名为:myapps。然后在自己的目录中建立WEB-INF目录,建议从D: omcat5webappsjsp-examples下将WEB-INF目录Copy过来,其中已经配置好了相关设置,特别是加入了jsp2.0这个新东东。现在的目录结构应该为:
D:	omcat5
         |------ webapps
             |------- myapps
                     |------WEB-INF

现在开始为DBCP做准备工作。将你想配置的database 的JDBC放到D: omcat5commonlib下,注意一定要放”.jar”的文件,如是“.zip”的文件直接改为.jar即可。本例是用一个Oracle的jdbc,偶将classes111.zip更名为classes111.jar放到这里。

下面开始配置xml文件:
1.        对server.xml的配置:
用(你习惯的)文本编辑器打开D: omcat5confserver.xml,找到<Context path="" docBase="ROOT" debug="0">将它改为以下形式,并加入Oracle的设置信息。
<Context path="/myapps" docBase="myapps" debug="5" reloadable="true" crossContext="true">
  <Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_DBTest_log." suffix=".txt"  timestamp="true"/>
         <!-- Oracle -->
<Resource name="jdbc/myoracle" auth="Container"     type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/myoracle">
<!-- myoracle是自己起的名子,对应到web.xml中也要用这个名子,以及JSP页面中。 -->
    <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:@127.0.0.1:1521:accp</value>
<!-- accp为你的数据库名称 -->
          </parameter>
          <parameter>
        <name>username</name>
        <value>scott</value>
          </parameter>
          <parameter>
        <name>password</name>
        <value>tiger</value>
          </parameter>
          <parameter>
                                <name>maxActive</name>
               <value>20</value>
          </parameter>
          <parameter>
        <name>maxIdle</name>
        <value>10</value>
          </parameter>
          <parameter>
        <name>maxWait</name>
        <value>10000</value>
          </parameter>
        </ResourceParams>
         <!-- Oracle end -->
</Context>
<!-- my DBCP is end -->


2.然后再打D: omcat5webappsmyappsWEB-INF下的web.xml,加入以下东东:(注意要在</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>

    OK!配置工作已经完成了。下面就是写一个JSP代码进入测试了。
在D: omcat5webappsmyapps下编写一个test.jsp,内容如下:
<%@ 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");
     ds = (DataSource)envCtx.lookup("jdbc/myoracle");
        if(ds!=null){
                out.println("Connection is OK!");
                Connection cn=ds.getConnection();
                if(cn!=null){
                        out.println("cn is Ok!");
                Statement stmt = cn.createStatement();
ResultSet rst = stmt.executeQuery("select * from BOOK");
                out.println("<p>rst is Ok!" + rst.next());
                        while(rst.next()){
        out.println("<P>BOOK_CODE:" + rst.getString(1));
                        }
                        cn.close();
                }else{
                        out.println("rst Fail!");
                }
        }
        else
                out.println("Fail!");
           }catch(Exception ne){ out.println(ne);
         }
%>


最后,进入测试。运行tomcat.bat,打开IE在地址栏中输入:http://localhost:8080myapps est.jsp
怎么样?结果出来了吧!呵呵~~~~~~~~
如果哪们“高手”看后对偶的文章有什么“批评”和“指点”请与偶联系,偶会非常感谢的。再有就是对java技术有兴趣的朋友也可与偶联系,大家一起交流java的学习方法和经验。谢谢!

本人联系方式:linnan18@eyou.com
QQ:46046044 请注明”java交流”。
MSN:Treey_Lin@hotmail.com

Copyright © 2002-2005 JSPCN.net. All rights reserved.
JSP中文网    备案序号:蜀ICP备05001583号
成都恒海科技发展有限公司    成都市一环路南二段6号新瑞楼三楼8号