Eclipse+lomboz环境开发的j2ee项目,我得项目名称deepsoft,web Moudle名称myapps
deploy以后会自动在tomcat建立下面目录建立一个发布目录
D:\tomcat5
|------ \webapps
|------- \myapps-----------------------------------------这个目录是自动生成的。
|------\WEB-INF
(1)为了清晰和便于管理,我们为我们这个项目配置数据库连接池的.xml文件。
D:\tomcat5
|------ \conf
|------- \Catalina
这个目录下面你会发现有root,manager,balance等目录,打开你就会发现是tomcat自带的虚拟目录配置文件。
这时我们可以为自己项目建立一个.xml文件。注意:文件名建议用项目名称,我得项目名称是deepsoft.xml
所以我得配置文件如下:
deepsoft.xml
<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="webapps" path="/webapps" reloadable="true">
<Resource name="jdbc/sqlserver" type="javax.sql.DataSource"/>
<ResourceLink name="jdbc/sqlserver" global="jdbc/sqlserver" type="javax.sql.DataSource"/><!--MUST BE NEED-->
<ResourceParams name="jdbc/sqlserver">
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://192.168.100.222:1433;DatabaseName=deepsoft</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>sa</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>4</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>2</value>
</parameter>
</ResourceParams>
</Context>
对oracle数据库只要更改相应的url,driverClassName即可。
同时保证你已经安装了必要的驱动,oracle的calss111.jar,和sqlserver的三个驱动文件到tomcat5\common\lib目录下
(2)
然后再打D:\tomcat5\webapps\myapps\WEB-INF\下的web.xml,加入以下语句:(注意要在</web-app>之前加)
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/sqlserver</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
NOTICE: NO THIS SENTENCE ,YOU WILL FIND A ERROR OF “CAN'T BOUND JNDI NAME“
(3)
NOTICE!!!!!!
配置完成
测试页面如下
index.jsp
<!-- Copyright (c) 2002 by ObjectLearn. All Rights Reserved. -->
<%@ 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();
if (initCtx == null)
throw new Exception("不能获取Context!");
Context envCtx = (Context) initCtx.lookup("java:comp/env");
ds = (DataSource)envCtx.lookup("jdbc/sqlserver");
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 ds_test");
out.println("<p>rst is Ok!" + rst.next());
while(rst.next()){
out.println("<P>STUDENT_NAME:" + rst.getString(2));
}
cn.close();
}else{
out.println("rst Fail!");
}
}
else
out.println("Fail!");
}catch(Exception ne){ out.println(ne);
}
%>