好久沒有更新我的博客了!這幾天在網上看到了關于Tomcat6.0數據庫連接池配置問題,我講下自己配置過程,不足這處,希望請大家提出來,共同進步.
第一: 首先聲明,這些配置過程只適合Tomcat6.0,因為Tomcat6.0以下的版本,配置過程有那么一點不一樣!Tomcat6.0數據庫連接池配置的更加靈活(個人觀點).
第一種方式:1.把context.xml(這個文件名字不能改)文件建到你的工程根目錄下META-INF文件下,這是因為你如果想換別的數據庫連接池方式可以修改這個文件就OK了,(低版本的好像的去Tomcat目錄下的config文件修改server.xml , 本人認為這樣比較死板,這也是因為Tomcat6.0配置更加靈活之處,但是6.0也可以去修改server.xml這個文件,本人覺的用第一種方法比較好,如果想試下,可以自己去看一看配置方式).
代碼:
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/studentproject" docBase="studentproject"
debug="5" crossContext="true" reloadable="true"
cachingAllowed="true" cacheMaxSize="20480"
cacheTTL="10000">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Resource
name="jdbc/test"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/bbs?autoReconnect=true"
username="root"
password="root"
maxActive="20"
maxIdle="10"
maxWait="-1" />
</Context>
下邊解釋幾個主要屬性:
path="/studentproject"; studentproject 這是我的工程名字,這里要寫上你自己工程名字;
docBase="studentproject" 同理;
reloadable="true"------>自動加載;
name="jdbc/test"------>數據源的名字其格式不能錯jdbc/name,其中test可以自己定
別的不多說了自己看一看應該會明白的.
2.修改你工程目錄文件WEB-INF下的web.xml文件(注意是你的工程目錄下的).
代碼如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<resource-ref>
<description>DB Connections</description>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
注意:
<res-ref-name>jdbc/test</res-ref-name>中間的名字一定要和你name="jdbc/test"名字一樣;
這樣基本的配置算上完成了,但一定要記得把你的MYSQL5.0驅動jar包考到Tomcat6.0 的lib文件下!
下邊寫個測試代碼:
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page contentType="text/html; charset=UTF-8"%>
<%@page import="java.sql.*" %>
<%@page import="javax.naming.*" %>
<%@page import="javax.sql.DataSource" %>
<head>
<title>Tomcat6.0 JNDI 測試!</title>
</head>
<body>
This is my JSP page. <br>
JNDI配置測試開始 ... <br>
<%
try {
//初始化 Context 上下文對象;
Context ctx = new InitialContext();
Context envContext = (Context)ctx.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/test"); //查找配置
//方法二:
//DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql");
Connection conn = ds.getConnection();
conn.close();
out.println("JNDI數據源配置成功了");
} catch (NamingException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
%>
</body>
</html>
完了打開你的IE:http://localhost:8080/studentproject/MyJsp.jsp 這是我的測試地址,成功后會看到如下信息:
這是Tomcat6.0數據庫連接池測試!!
JNDI配置測試開始 ...
JNDI數據源配置成功了
如果不成功,可能是版本問題.這種方法在我的上邊列出版本下測試通過!
有問題請發Email:zzzlyr@163.com