Tomcat - DBCP 配置

1. Database configuration

Create a new test user, a new database and a single test table. Your MySQL user must have a password assigned. The driver will fail if you try to connect with an empty password.

GRANT ALL PRIVILEGES ON *.* TO javauser@localhost 
IDENTIFIED BY 'javadude' WITH GRANT OPTION;

CREATE DATABASE javatest;
USE javatest;
CREATE TABLE testdata (
    id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    foo VARCHAR(25), 
    bar INT
);

INSERT INTO testdata VALUES(NULL, 'hello', 12345);

 

2. Context configuration

Configure the JNDI DataSource in Tomcat by adding a declaration for your resource to your Context.

<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
       maxActive="100" maxIdle="30" maxWait="10000"
       username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
       url="jdbc:mysql://localhost:3306/javatest"/>

 

3. web.xml configuration

Now create a WEB-INF/web.xml for this test application.

<?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 Connection</description>
        <res-ref-name>jdbc/TestDB</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
</web-app>

 

4. Test code

Now create a simple test.jsp page for use later.

<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<sql:query var="rs" dataSource="jdbc/TestDB">
select id, foo, bar from testdata
</sql:query>

<html>
    <head>
        <title>DB Test</title>
    </head>
    <body>
        <h2>Results</h2>
        <c:forEach var="row" items="${rs.rows}">
            Foo ${row.foo}<br />
            Bar ${row.bar}<br />
        </c:forEach>
    </body>
</html>

 

posted on 2015-09-04 10:49  huey2672  阅读(393)  评论(0编辑  收藏  举报