TOMCAT5.5 First系列(3) -连接池篇

原创 2004年12月31日 15:19:00

(转贴请保留原创的相关信息) 
       上一篇使用简单地说了一下TOMCAT5.5的使用,这次来说说在TOMCAT5.5中常用的数据的连接池建立和测试

PS:由于测试的东西较多,所以发布后直到今天才更新,各位看官见谅.:-)   OK,Now is go~~~~ 
                                                                                     深蓝(LiuYXIT)  -- 2005/01/05
数据库和JDBC驱动准备:
MYSQL:
mysql-4.1.8-win.zip
mysql-connector-java-3.0.16-ga.zip
www.mysql.org 中下载

MSSQL:
http://www.microsoft.com/china/sql/downloads/jdbc_sp1.asp

一、MySQL
1.装好MYSQL,解压JDBC驱动(呵呵,废话)

2.把JDBC驱动mysql-connector-java-3.0.16-ga-bin.jar放到TOMCAT_HOME/common/lib里

3.这时我们建一个测试JDBC和数据库是否正常的JSP页MYSQL.JSP(放在第二篇建的虚拟目录SNOW,物理路径为e:/www/snow中),内容如下:
<%@ page contentType="text/html;charset=gbk"%>   
<%@ page import="java.sql.*"%>
<html>
<body>


<%
out.print("测试开始<br>");
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url ="jdbc:mysql://localhost/snow?user=root&password=liuyxit&useUnicode=true&characterEncoding=GB2312" ;
//上面对应改snow为你的数据库名,root为你登录的用户,liuyxit为该用户的密码
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement();
String query="select username from sys_user"; //对应改你的表名和字段名
ResultSet rs=stmt.executeQuery(query);
while(rs.next())
{
        String s=rs.getString(1);//检查你的字段是不是字符型,不是就不能用getString,根据字段类使用getBoolean等等
        out.print(s+"<br>");
}
conn.close();
out.print("我的测试结束<br>                                                                    --深蓝");
%>
</body>
</html>
//--JSP完--
   现在可以重启TOMCAT,放问:http://localhost:8080/snow/MYSQL.jsp
看到你数据库的数据了吗?如果OK就进行下一步

4.把第一篇中建的TOMCAT_HOME/conf/Catalina/localhost/snow.xml改成以下内容:
<?xml version='1.0' encoding='utf-8'?>
<Context path="/snow" docBase="E:/WWW/snow"
    debug="5" reloadable="true" crossContext="true">

    <Resource name="jdbc/TestMYSQL" auth="Container" type="javax.sql.DataSource"
        maxActive="100" maxIdle="30" maxWait="10000"
        username="root" password="liuyxit" driverClassName="com.mysql.jdbc.Driver"
        url="jdbc:mysql://localhost:3306/snow?autoReconnect=true"/>
</Context>



5.建一个测试JNDI连接池的JSP文件TestMYSQL.jsp,内空如下:
<%@ page contentType="text/html;charset=gbk"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page session="false" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body>
<%
out.print("我的测试开始<br>");
try{
 InitialContext ctx=new InitialContext();
 DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/TestMYSQL");
//这里的jdbc/TestMYSQL要跟第四步中的Resource 的name相同
 Connection conn = ds.getConnection();
 Statement stmt = conn.createStatement();
 String strSql = " select * from sys_user";
//sys_user必须是第四步中Data Source的URL对应的数据库里的表
 ResultSet rs = stmt.executeQuery(strSql);
 while(rs.next()){
  out.print(rs.getString(1));
  out.print("<br>");
 }
 
}
catch(Exception ex){
 out.print("出现异常,信息是:"+ex.getMessage()+"<br>");
 ex.printStackTrace();
}
out.print("我的测试结束<br>                                                                    --深蓝");
%>
</body>
</html>

6.ok,检查无误,重启TOMCAT,访问http://localhost:8080/snow/TestMYSQL.jsp

呵呵,另提一下,注意TestMYSQL的大小写问题.

二、MSSQL
(未完,待续)

C# 串口操作系列(4) -- 协议篇,文本协议数据解析

C# 串口操作系列(4) -- 协议篇,文本协议数据解析 分类: 通讯类库设计2010-06-09 01:50 9356人阅读 评论(26) 收藏 举报 c#uiobjectstr...
  • zb872676223
  • zb872676223
  • 2013年07月24日 18:35
  • 1199

Java总结篇系列:Java多线程(三)

本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题。 一.一个典型的Java线程安全例子 1 public class ThreadTest { 2 3 p...
  • nuli888
  • nuli888
  • 2016年07月11日 21:19
  • 175

IC设计基础系列之CDC篇3:揭秘《跨时钟域处理》三大方法

来自:http://dengkanwen.com/238.html   跨时钟域处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟域间的数据,可以说是每个FPGA初学者的必修课。如果是还在校的本科...
  • Times_poem
  • Times_poem
  • 2017年06月11日 18:20
  • 506

IC设计基础系列之CDC篇9:跨时钟域信号传输(一)——控制信号篇

来自:http://www.cnblogs.com/IClearner/p/6485389.html 最近我整理了一下跨时钟域设计的一些知识,一方面这与亚稳态有关系,承接前面讲到的内容,一方面...
  • Times_poem
  • Times_poem
  • 2017年06月11日 19:30
  • 745

O'Reilly之深入浅出Head First系列的中文版与英文版合集

Head First系列是O’Reilly出版社最成功的系列图书,自问世以来受到了无数读者的喜爱,并屡获大奖。其图文并茂,讲述编程技术由浅到深,也被称为“深入浅出”系列,是不可多得的各阶段程序员的参考...
  • Torchfire
  • Torchfire
  • 2013年10月05日 21:16
  • 41486

[05] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署

[渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署 2014-05-05 23:57 by Bce, 1377 阅读, ...
  • Litt_J
  • Litt_J
  • 2014年12月29日 14:33
  • 1133

HDU 2045 不容易系列之(3)—— LELE的RPG难题

不容易系列之(3)—— LELE的RPG难题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/O...
  • a237653639
  • a237653639
  • 2015年06月08日 12:46
  • 835

2045不容易系列之(3)—— LELE的RPG难题(递推)

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submissio...
  • qq_34594236
  • qq_34594236
  • 2016年06月29日 09:12
  • 221

sharepoint 2016 学习系列篇(21)-文档库应用篇-(3)在文档库中上传文档和下载文档

在文档库中,上传文档到文档库中,有一下几种方式: 第一种,通过文档库页面,点击上载: 点击“浏览”,选择需要上载的文件,点击确定 第二种,通过文档库页面,拖文档的方式上载: 在电脑...
  • cxx2325938
  • cxx2325938
  • 2016年07月22日 12:47
  • 1412

《HEAD FIRST JAVA》第一次回顾和整理

《HEAD FIRST JAVA》第一次回顾和整理 第一章 进入Java的世界(基本概念) 主要介绍了Java的工作原理,发展简史,程序结构和一些简单的语法。学过其他语言的人表示这章完全没有压力。...
  • zhanghongzheng3213
  • zhanghongzheng3213
  • 2016年06月07日 18:02
  • 1659
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TOMCAT5.5 First系列(3) -连接池篇
举报原因:
原因补充:

(最多只允许输入30个字)