主題:TOMCAT配置JNDI數據源(MySql)

1. tomcat中添加jndi數據源,修改server.xml文件中標籤的內容,如下所示

<Context docBase="TestDevon" path="/TestDevon"
reloadable="true" source="org.eclipse.jst.j2ee.server:TestDevon">
<Resource auth="Container" name="jdbc/mysql" type="javax.sql.DataSource" />
<ResourceParams name="jdbc/mysql">
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>factory</name>
<value>
org.apache.commons.dbcp.BasicDataSourceFactory
</value>
</parameter>
<parameter>
<name>url</name>
<!-- value>jdbc:derby://localhost:1527/devonoffice?characterEncoding=euckr</value-->
<value>
jdbc:mysql://localhost:3306/testdevon?autoReconnect=true
</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>
com.mysql.jdbc.Driver
</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>lgcnschina</value>
</parameter>
</ResourceParams>
</Context>


2. 確認MySql驅動是否存放在tomcat下的common\lib文件夾中
3. 測試數據源的配置是否成功

(1) 在web.xml中添加如下代碼

<resource-ref>
<description>DataSource</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>


(2) 測試數據源

<html>
<head>
<title>test jndi</title>
</head>
<body>
<%
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:comp/env"); DataSource ds = (DataSource) ctx.lookup("jdbc/mysql");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from user_info");
while (rs.next()) {
%>
<%=rs.getInt(1)%>
<%
}
rs.close();
stmt.close();
conn.close();
%>
</body>
</html>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章