Tomcat7环境下面MySQL 56/Oracle数据库连接池的配置
环境:
- Tomcat7
- MySQL56
- mysql-connector-java-3.1.10-bin.jar
步骤:
1. 配置context.xml
此文件位于~\tomcat7\conf目录下面,增加如下代码:
<Resource name="jdbc/DemoDb" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/mybbs" username="root" password="yourpass" maxActive="20" maxIdle="5" maxWait="-1"/>
这些参数的含义都很好理解。注意修改数据库名、用户名、密码等几项参数。如果是开发环境,并不需要优化maxActive/maxIdle等参数。如果是Oracle数据库,不同的地方如下:
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
2. 拷贝mysql-connector-java-3.1.10-bin.jar文件到~\tomcat7\lib目录下
如果是Oracle数据库,则拷贝ojdbc6.jar文件到~tomcat7\lib目录下。
3. 配置web.xml
合适位置增加如下内容:
<resource-ref> <description>MySQL Datasource</description> <res-ref-name>jdbc/DemoDb</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
4. 建立测试JSP页面
文件命名为dbtest.jsp,存放于Web根目录,内容如下:
<%@ page contentType="text/html;charset=UTF-8" %> <%@ page import="java.sql.*, javax.naming.*, javax.sql.*"%> <% // 从连接池中获取连接句柄 Context initCtx = new InitialContext(); Context envCtx = (Context)initCtx.lookup("java:comp/env"); DataSource ds = (DataSource)envCtx.lookup("jdbc/DemoDb"); Connection conn = ds.getConnection(); try { Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("select sysdate()"); if(rs.next()) out.println(rs.getString(1)); rs.close(); stmt.close(); }finally{ if(conn != null) conn.close(); } %>
打开IE,输入此JSP地址http://127.0.0.1:8080/st/dbtest.jsp,显示当前时间2013-11-16 15:19:59.0,成功!