Tomcat数据源配置(以MySQL为例)
一、需要在Tomcat(%TOMMCAT_HOME%\common\lib)中拷贝好MySQL数据库的驱动程序。
二、数据源的基本概念
1、通过Connection Pool管理数据的连接
2、通过DataSource去管理Connection Pool
3、DataSource被JNDI绑定
三、修改Tomcat(%TOMMCAT_HOME%\conf\web.xml)的配置文件web.xml.
<Context path="/test" docBase="G:\mldn j2ee\mldn sourcecode\tomcatsource"
debug="5" reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_MysqlTest_log." suffix=".txt"
timestamp="true"/>
<Resource name="名字(jdbc/mldn)" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="名字(jdbc/mldn)">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>username</name>
<value>用户名(root)</value>
</parameter>
<parameter>
<name>password</name>
<value>密码(root)</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>驱动程序(com.mysql.jdbc.Driver)</value>
</parameter>
<parameter>
<name>url</name>
<value>连接地址(jdbc:mysql://localhost/mldn)</value>
</parameter>
</ResourceParams>
</Context>
四、修改所在项目的配置文件web.xml(特别注意)
在<web-app></web-app>标签中加入以下代码:
<resource-ref>
<res-ref-name>jdbc/mldn</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
五、测试代码:
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%!
final String JNDINAME = "java:comp/env/jdbc/mldn" ;
%>
<%
Connection conn = null ;
try
{
// 初始化查找命名空间
Context ctx = new InitialContext() ;
// 找到DataSource
DataSource ds = (DataSource)ctx.lookup(JNDINAME) ;
conn = ds.getConnection() ;
}
catch(Exception e)
{
System.out.println(e) ;
}
%>
<%=conn%>
<%
// 将连接重新放回到池中
conn.close() ;
%>
配置完需要通过名称的查找方式,找到数据源。
本程序使用的是Tomcat服务器,所以在名称查找时需要对名称进行定位:java:comp/env