1 确认SQLServer 的JDBC驱动为最新的。为一个sqljdbc.jar 文件,老版驱动为3个jar,请到[
下载资源]里面下载
2 复制sqljdbc.jar 到 tomcat/common/lib 目录下面
3 在 tomcat/conf/Catalina/localhost 下面增加 java2000.xml , 请根据自己的实际情况修改

<Context path="/java2000" docBase="E:/workplace/www.java2000.net/WebContent" debug="true" reloadable="true">
<Resource
name="jdbc/sqlserver"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433"
username="java2000"
password="java2000"
maxActive="20"
maxIdle="10"
maxWait="-1"
/>
</Context>4 也可以直接在 tomcat/conf/server,xml 增加同样的内容。
<Context path="" reloadable="true" docBase="ROOT" />
<Context path="/java2000" docBase="E:/workplace/www.java2000.net/WebContent" debug="true" reloadable="true">
<Resource
name="jdbc/sqlserver"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433"
username="java2000"
password="java2000"
maxActive="20"
maxIdle="10"
maxWait="-1"
/>
</Context>5 如果你使用主站点,则把内容放到 path="" 的 Context 里面<Context path="" reloadable="true" docBase="ROOT" >
<Resource
name="jdbc/sqlserver"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433"
username="java2000"
password="java2000"
maxActive="20"
maxIdle="10"
maxWait="-1"
/>
</Context>6 修改 web.xml 引用我们配置的数据源 <resource-ref>
<description>DB connection</description>
<res-ref-name>jdbc/sqlserver</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>7 编写测试代码<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="javax.naming.*,javax.sql.*,java.sql.*"%>
<pre>
<%
System.out.println("CLASSPATH....");
System.out.println(System.getProperty("java.class.path"));
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/sqlserver");
Connection con = null;
ResultSet rs = null;
try {
con = ds.getConnection();
DatabaseMetaData dm = null;
if (con != null) {
dm = con.getMetaData();
out.println("Driver Information");
out.println("\tDriver Name: " + dm.getDriverName());
out.println("\tDriver Version: " + dm.getDriverVersion());
out.println("\nDatabase Information ");
out.println("\tDatabase Name: " + dm.getDatabaseProductName());
out.println("\tDatabase Version: " + dm.getDatabaseProductVersion());
out.println("Avalilable Catalogs ");
rs = dm.getCatalogs();
while (rs.next()) {
System.out.println("\tcatalog: " + rs.getString(1));
}
} else {
out.println("Error: No active Connection");
}
} catch (Exception ex) {
ex.printStackTrace();
} finally {
if (rs != null) {
try {
rs.close();
rs = null;
} catch (Exception ex) {}
}
if (con != null) {
try {
con.close();
con = null;
} catch (Exception ex) {}
}
}
%>
</pre>8 启动Tomcat, 并运行我们的代码
Driver Information
Driver Name: Microsoft SQL Server 2005 JDBC Driver
Driver Version: 1.1.1501.101
Database Information
Database Name: Microsoft SQL Server
Database Version: 8.00.2039
Avalilable Catalogs
控制台输出

2008-02-03_120503.gif 2008-02-03_120816.gif 2008-02-03_121433.gif