• Tomcat


    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>
  • 相关阅读:
    python随机生成
    socket、tcp、http
    TCP三次握手和http过程
    iOS多线程的初步研究(十)-- dispatch同步
    dispatch队列
    IOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
    UIWebView 自定义网页中的alert和confirm提示框风格
    dispatch_semaphore
    app内购提示,您已购买此商品,但未下载
    单例的写法
  • 原文地址:https://www.cnblogs.com/huey/p/4781355.html
Copyright © 2020-2023  润新知