【IT168技术文档】 终于解决了困扰多天的连接池的问题,写下这编文章与大家一起分享。我是在tomcat5.5.9下配置的,
tomcat5.5.X和以前的版本有一些差别,所以配置上也有差别。我就说一下在tomcat5.5.9配置的基本步骤:(确定你以安装好
tomcat5.5.9、sql2000)
1、把数据库JDBC驱动拷贝到%TOMCAT_HOME%/common/lib和%TOMCAT_HOME%/webapps/yourweb/WEB-INF/lib下(我的web文件夹名字叫quickstart)
这一步大家都知道,不然tomcat无法与数据库连接。
2、修改%TOMCAT_HOME%/conf/server.xml文件,在 之间
添加以下内容:
name="jdbc/quickstart"
type="javax.sql.DataSource"
password="123456"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
maxIdle="2"
maxWait="5000"
username="sa"
url="jdbc:microsoft:sqlserver://localhost;DatabaseName=quickstart" maxActive="4"/>
以上内容根据大家的具体情况进行相应修改,比如:把name="jdbc/quickstart"中的quickstart改成和你web文件夹名称一样,把password="123456"中的“123456”改成你数据库的密码。
3、在%TOMCAT_HOME%/conf/Catalina/localhost下新建一个与你web文件夹同名的xml文件(我的是quickstart.xml)
这一步非常重要,如果没有这步就会出错,会出现org.apache.tomcat.dbcp.dbcp.SQLNestedException:
Cannot create JDBC driver of class '' for connect URL 'null'
这样的错误,在文件中加入第2步的内容,如下:
name="jdbc/quickstart"
type="javax.sql.DataSource"
password="123456"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
maxIdle="2"
maxWait="5000"
username="sa"
url="jdbc:microsoft:sqlserver://localhost;DatabaseName=quickstart"
maxActive="4"/>
根据个人具体情况进行相应修改。
4、修改%TOMCAT_HOME%/webapps/yourweb/WEB-INF下的web.xml文件,在之间添加以下内容
sqlserverDB Connection
jdbc/quickstart
javax.sql.DataSource
Container
把jdbc/quickstart中的quickstart改成你的web文件夹名称。
5、测试,在quickstart下新建一个index.jsp文件
<%@ page contentType="text/html; charset=gb2312" %><%@ page
import="javax.naming.*" %><%@ page import="javax.sql.*"
%><%@ page import="java.sql.*"
%>JDBC
Test<%
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
ResultSetMetaData md=null;
try
{
Context initCtx=new InitialContext();
DataSource ds=(DataSource)initCtx.lookup("java:comp/env/jdbc/quickstart");
if(ds!=null)
{
out.println("已经获得DataSource");
out.println(ds.toString());
conn=ds.getConnection();
stmt=conn.createStatement();
out.println("aa");
rs=stmt.executeQuery("select * from cat");
md=rs.getMetaData();
out.println("");
out.println("");
for(int i=0;i {
out.println(""+md.getColumnName(i+1)+" | ");
}
while(rs.next())
{
out.println("");
out.println(""+rs.getString(1)+" | ");
out.println(""+rs.getString(2)+" | ");
out.println(""+rs.getString(3)+" | ");
out.println(""+rs.getString(4)+" | ");
out.println("
");
}
out.println("
");
conn.close();
}
}
catch(Exception e)
{
out.println(e.toString());
System.out.println(e.toString());
}%>
运行tomcat服务器,在浏览器中输入看看成功了没有。
阅读(559) | 评论(0) | 转发(0) |