五、现在还没有配置好连接池,需要一个实际的Web应用例子来测试
1、 在数据zfvims上建立表books,sql如下
CREATE TABLE `books` (
`id` varchar(8) NOT NULL,
`name` varchar(24) default NULL,
`title` varchar(96) default NULL,
`price` float default NULL,
`yr` int(11) default NULL,
`description` varchar(30) default NULL,
`saleAmount` int(11) default NULL,
PRIMARY KEY (`id`))
并插入数据:
insert into `books` values ('201','王芳','Java编程指南',33.75,1999,'让读者轻轻松松掌握Java语言',1000),('202','张丙','Weblogic技术参考',45.99,2002,'真的不错耶',2000),('203','孙艳','Oracle数据库教程',40,2003,'关于Oracle的最畅销的技术书',2000),('204','大卫','从Oak到Java: 语言的革命',20.75,1998,'很值得一看',2000),('205','阿明','Apache从入门到精通',50.75,2002,'权威的Apache技术资料',2000),('206','洪军','Java与数据算法 ',54.75,2002,'权威的Java技术资料',2000);
2、 建立一个最简单的web应用,就包含两个文件:web.xml和testds.jsp,打成war包,内容分别如下:
web.xml
---------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<welcome-file-list>
<welcome-file>test.jsp</welcome-file>
</welcome-file-list>
</web-app>
---------------------------------------------------------------------------------------------------
testds.jsp
---------------------------------------------------------------------------------------------------
<%--
Created by IntelliJ IDEA.
FileName: FileName.jap
User: LavaSoft
Date:
2006-11-23
Time: 0:41:43
ReadMe: 测试tomcat数据源
--%>
<!--首先导入一些必要的packages-->
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%@ page import="com.mysql.jdbc.Connection" %>
<!--设置中文输出-->
<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
<title>DbJsp1.jsp</title>
</head>
<body>
<%
//以try开始
try {
java.sql.Connection con;
Statement stmt;
ResultSet rs;
//建立数据库连接
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/zfvimsds");
con = ds.getConnection();
//创建一个JDBC声明
stmt = con.createStatement();
//增加新记录
stmt.executeUpdate("INSERT INTO books (id,name,title,price) VALUES ('999','Tom','Tomcat Bible',44.5)");
//查询记录
rs = stmt.executeQuery("SELECT id,name,title,price from books");
//输出查询结果
out.println("<table border=1 width=400>");
while (rs.next()) {
String col1 = rs.getString(1);
String col2 = rs.getString(2);
String col3 = rs.getString(3);
float col4 = rs.getFloat(4);
//convert character encoding
col1 = new String(col1.getBytes("ISO-8859-1"), "GB2312");
col2 = new String(col2.getBytes("ISO-8859-1"), "GB2312");
col3 = new String(col3.getBytes("ISO-8859-1"), "GB2312");
//打印所显示的数据
out.println("<tr><td>" + col1 + "</td><td>" + col2 + "</td><td>" + col3 + "</td><td>" + col4 + "</td></tr>");
}
out.println("</table>");
//删除新增加的记录
stmt.executeUpdate("DELETE FROM books WHERE id='999'");
//关闭数据库连结
rs.close();
stmt.close();
con.close();
}
//捕获错误信息
catch (Exception e) {
out.println(e.getMessage());
}
%>
</body>
</html>
---------------------------------------------------------------------------------------------------
3、 打成war包testweb.war,复制到E:\myserver\apache-tomcat-
5.5.20
\webapps下面,然后启动tomcat,然后再关闭,然后会发现在E:\myserver\apache-tomcat-5.5.20\conf\Catalina\localhost下面多了一个testweb.xml文件,将此文件打开,内容如下:
--------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/">
</Context>
--------------------------------------------------------------------------------------------------
4、 修改这个生成的文件,方法是将(四-4)部分里面生成的连接池配置信息复制到这个文件里面,完成后如下:
--------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/">
<Resource
name="jdbc/zfvimsds"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
password="leizhimin"
maxIdle="2"
maxWait="5000"
username="zfvims"
url="jdbc:mysql://127.0.0.1/zfvims"
maxActive="4"/>
</Context>
--------------------------------------------------------------------------------------------------

六、后记,其中有些需要特别说明的部分如下:
1、 我在tomcat-
5.0.28
和5.5.20上都做类似的配置,发现两个生成的server.xml差异比较大,其中5.5生成的格式更简练一些。
2、 tomcat数据源在java程序中的访问必须为java:comp/env/jdbc/zfvimsds这样的格式,其中红色部分java:comp/env/是固定的写法,蓝色部分jdbc/zfvimsds是数据源的JNDI名字。
3、 另外Tomcat与集成开发环境IDE之间应用还有很多技巧,本人尤为推荐Idea5.12,最好用的java开发工具。
本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/10483,如需转载请自行联系原作者