我的配置及运行环境是,基于windows2000下tomcat5.0.28+jdbc3.0+sqlserver2000+jdk1.5,首先将数据驱动置于web应用的WEB-INF \lib目录下。
一、注意以下几个方面:
第一:tomcat版本问题,我开始为了追求新版本,下了个tomcat5.5.7,配过N天,都死活不行,不知该版本是否有Bug,还是配置时某些方面我没有配好。无奈下了个tomcat5.0.28,粗略一试,ok,成功。
第二:页页浏览时,报错为无法找到driver时,不妨将数据库驱动置于%tomcat%\common\lib目录下,供tomcat使用。
二、配置文件,新建%tomcat%\conf\Catalina\localhost下的sessiontest.xml文件
<Context path="/sessiontest" docBase="sessiontest" debug="0" reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_sessiontest_log." suffix=".txt" timestamp="true"/>
<Environment name="maxExemptions" type="java.lang.Integer" value="15"/>
<Parameter name="context.param.name" value="context.param.value" override="false"/>
<Resource name="jdbc/sessiontestDB" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/sessiontestDB">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>123</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test</value>
</parameter>
</ResourceParams>
</Context>
web应用所在的WEB-INF 下的web.xml文件
<?xml version="1.0" encoding="GB2312"?>
<!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>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/sessiontestDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
三、测试页面:
<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page session="false" %>
<%
DataSource ds = null;
try
{
InitialContext ctx=new InitialContext();
ds=(DataSource)ctx.lookup("java:comp/env/jdbc/sessiontestDB");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String strSql = " select * from jnditest";
ResultSet rs = stmt.executeQuery(strSql);
while(rs.next())
{
out.print(rs.getString(1));
}
}
catch(Exception ex)
{
out.print("error:"+ex.getMessage());
ex.printStackTrace();
}
%>
tomcat我研究得不深,有关tomcat版本的问题,还得向大家请教~~~~