q789321 发表于 2016-10-18 10:20:28

Tomcat5.5.20 使用JDBC 配置Mysql 5.0.22数据库连接池

这是我最早在csdn发的文章,2007年3月13日,很有纪念意义啊,真的精工细作,仔仔细细的写,认真的排版,虽然现在看着还是有些简陋,但在当时对我来说真是激动啊,第一次发技术文章~~~~
咱废话不多说,http://localhost:8080 , 开始...
这是全局配法:
1、TomCat Administration
    |_
       Resources
                            |_
                                    Data sources
                               |_
                                    Data Source Actions(右上角处)
                                       |_
                                              Create New Data Source(下拉菜单中选择此项)

2、在新建数据源中,设置Vaule
Property                     Value
JNDI Name:         jdbc/mysql(名字随便)         
Data Source URL:            jdbc:mysql://localhost:3306/<databasename>
JDBC Driver Class:         org.gjt.mm.mysql.Driver
User Name:                        root(根据自己设置MySql的用户名来定)
Password:                           ××××××




剩下的视应用的情况来定,一般默认就可。
3、配置XML
来到TomCat的安装目录 ./conf/server.xml

<Context path="/DBTest" docBase="DBTest"      debug="5" reloadable="true" crossContext="true">    <!-- maxActive: Maximum number of dB connections in pool. Make sure you         configure your mysqld max_connections large enough to handle         all of your db connections. Set to 0 for no limit.         -->    <!-- maxIdle: Maximum number of idle dB connections to retain in pool.         Set to -1 for no limit.See also the DBCP documentation on this         and the minEvictableIdleTimeMillis configuration parameter.         -->    <!-- maxWait: Maximum time to wait for a dB connection to become available         in ms, in this example 10 seconds. An Exception is thrown if         this timeout is exceeded.Set to -1 to wait indefinitely.         -->    <!-- username and password: MySQL dB username and password for dB connections-->    <!-- driverClassName: Class name for the old mm.mysql JDBC driver is         org.gjt.mm.mysql.Driver - we recommend using Connector/J though.         Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.         -->      <!-- url: The JDBC connection url for connecting to your MySQL dB.         The autoReconnect=true argument to the url makes sure that the         mm.mysql JDBC Driver will automatically reconnect if mysqld closed the         connection.mysqld by default closes idle connections after 8 hours.         --><Resource name="jdbc/TestDB(要与自己的JNDI一致)" 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?autoReconnect=true(一致)"/></Context>


再到自己的WEB-INF/web.xml

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"    version="2.4"><description>MySQL Test App</description><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>


OK!重启tomcat,写个TestJsp.jsp

<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>      
<%@ page import="javax.sql.*"%>      
<%@ page import="javax.naming.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>JSP Page</h1>
<%
out.println("开始>>>");
try{
InitialContext ct = new InitialContext();
DataSource ds = (DataSource)ct.lookup("java:comp/env/jdbc/mysql");
Connection conn = ds.getConnection();
Statement stm = conn.createStatement();
String sql = "select * from help_category";
ResultSet rs = stm.executeQuery(sql);
while(rs.next()){
out.println("<br>");
for(int i=0;i<rs.getMetaData().getColumnCount();i++){
out.print(rs.getString(i+1));
}
}
out.print("经过'rs'循环");
}catch(Exception ex){
out.print("Error: "+ex.getMessage());
ex.printStackTrace();
}      
%>
</body>
</html>
页: [1]
查看完整版本: Tomcat5.5.20 使用JDBC 配置Mysql 5.0.22数据库连接池