Tomcat6.0 連接池的配置及實例<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1. 配置Tomcat目錄文件夾conf下的context.xml文件添加如下節點:
SqlServer爲:
<Resource name="jdbc/testDB" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="sa" password="" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"/>
MySql爲:
<Resource name="jdbc/testDB" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="root" password="root" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/class"/>
2. 找到WEB-INF/web.xml 在<web-app>..</web-app>中添加如下節點
<resource-ref>
<description>TestDB</description>
<res-ref-name>jdbc/testDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
3. 編寫測試程序代碼如下:
package com.szkp;
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;
import java.util.*;
public class <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />Conn {
public Connection getCon(){
Connection con=null;
try {
Context ic=new InitialContext();
DataSource data=(DataSource)ic.lookup("java:comp/env/jdbc/testDB");
con=data.getConnection();
} catch (NamingException e) {
e.printStackTrace();
}catch (SQLException e) {
e.printStackTrace();
}
return con;
}
public List getData(Connection con){
List<String> name=null;
String sql="select au_lname from authors";
try {
Statement s=con.createStatement();
ResultSet rs=s.executeQuery(sql);
name=new ArrayList<String>();
while(rs.next()){
String ss=rs.getString(1);
name.add(ss);
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return name;
}
}
4. 編寫測試Jsp頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%@ page import="com.szkp.*" %>
<%@ page import="java.sql.*" %>
<%
request.setCharacterEncoding("gbk");
response.setContentType("text/html; charset=gb2312");
%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page. <br>
<%Conn c=new Conn(); %>
<%Connection con=c.getCon(); %>
<%List name=c.getData(con);
for(int i=0;i<name.size();i++){
out.println(name.get(i)+"<br>");
}%>
</body>
</html>