前一段时间做了一个小项目,是直接利用JDBC跟数据库打交道的。我现在换用Tomcat的数据库连接池来实现数据库的连接,感觉刚开始的时候真的是问题多多,还好,现在终于可以连接数据库了。总结了一点点经验,供大家参考!!!
首先要先准备好必要的软件:
1、从http://www2.tw.freebsd.org/Apache/java-repository/commons-dbcp/jars/下载commons-dbcp-1.2.1.jar,然后拷贝放到Tomcat 5.5/common/lib下
2、从http://www.microsoft.com网站下载SQL Server 2000的JDBC驱动程序(注:直接在网站搜索:JDBC就可以找到了,自己去下载哦),然后把相应的JDBC的驱动程序(jar文件)拷贝到Tomcat5.5/common/lib下
然后修改Tomcat5.5.9/conf/server.xml和你的应用程序的web.xml两个文件
3、编辑Tomcat 5.5/conf/server.xml
打开你的Tomcat5.5.9/conf/server.xml文件,然后找到 <Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
在其后添加连接描述
<Context path="/StudentGrade" docBase="studentgrade" debug="5" reloadable="true" crossContext="true">
<Resource name="student_gradeDB"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Test"
username="sa"
password="123456"
maxActive="20"
maxIdle="10"
maxWait="-1"/>
</Context>
说明:
StudentGrade是你的war包名称或者是你在webapps/创建的目录名称
student_gradeDB是连接数据源名称
Test是你的数据库名称
4、编辑web.xml文件
在web.xml中,直接添加以下内容:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>student_gradeDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
说明:这里的student_gradeDB就是上面的
好了,应该准备的也准备好了,现在我们就来写一个test.jsp来测试一下。
<%@ page contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>测试</title>
</head>
<body>
<%
try{
Context ctx = new InitialContext();
DataSource connectionPool = (DataSource) ctx.lookup("java:comp/env/student_gradeDB");
Connection conn = connectionPool.getConnection();
out.print("恭喜,连接成功了!!");
conn.close();
}
catch(Exception ex){
out.print(ex.getMessage());
ex.printStackTrace();
}
%>
</body>
</html>
<%@ page contentType="text/html; charset=GB2312" %>
如果你测试的时候能够显示出:恭喜,连接成功了!!
那就OK了!!!