Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台…

2008-02-23 09:43:29来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

- 送给大家的“六一”礼物

JSP 环境目前最流行的是 Tomcat5.0。Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没必要把 Tomcat 与 IIS 或 Apache 集成起来。在 Tomcat 自带的 Web 服务器下可以进行 Jsp 测试。
安装 Tomcat5.0 前需要安装 JDK(如果是 Windows server 2003 就必须安装 JDK,因为 Windows server 2003 是不带 JVM 的-Windows server 2003 发行时 MS 和 SUN 刚好闹别扭呢)。安装完后,要设置几个环境变量:

Java_HOME = E:\j2sdk1.4.2_04
CLASSPATH = E:\j2sdk1.4.2_04\lib;E:\j2sdk1.4.2_04\lib\tools.jar
Path 中加 .;E:\j2sdk1.4.2_04\bin;
CATALINA_HOME = E:\Tomcat 5.0
TOMCAT_HOME = E:\Tomcat 5.0

解释如下:我的 JDK版本是 1.4.2,安装在 E:\j2sdk1.4.2_04 文件夹下。

环境变量 JAVA_HOME 和 CATALINA_HOME 是一定要加的(至少参考资料都是这么说的)。CLASSPATH 也说要加,但是我没加似乎也没什么影响。Path 中加 “.;E:\j2sdk1.4.2_04\bin;”也一样,我不加 jsp 也能运行起来,但是在 DOS 窗口下手工编译 .java 类到 .class 文件有影响,因为找不到 javac.exe 编译命令文件。至于 path 中加的那个点“.”,我原来在 resin 下是需要的,在 Tomcat 下还没确定它是不是必须的。
大家还发现 CATALINA_HOME 和 TOMCAT_HOME 的值是一样的,我估计 TOMCAT_HOME 是 Tomcat 的旧版本使用的,现在用的都是 CATALINA_HOME。不过这2个好象并不是不相容的,都加上,或者加其中任意一个,Jsp 都不手影响。不过我建议用一个 CATALINA_HOME 就算了。

Tomcat5.0 设置虚拟路径比较方便了,因为可以在 Web 环境下管理。http://[url]:8080/admin 可以进入管理界面(管理员admin密码在 Tomcat 安装过程中可以设置),在 Tomcat Server-Service (Catalina)-Host (localhost)下可以添加 Context,类似于 IIS
里的虚拟路径:Document Base 指的是从实际 E:\Tomcat 5.0\webapps\ROOT 为起点的文件路径,Path 指的是从虚拟“/”开始的虚拟路径名,如“/mytest”。这里 Tomcat 好象设计的有点不完善,只要加了新的 Context,保存,再点“Commit Changes”按钮,再点Context 去看时,界面就会退到登录界面,但是有时页面就出错了,必须再次手工进入http://[url]:8080/admin。加了 Context,Apache Tomcat 服务必须“关闭/启动”一下(在Windows管理控制台的服务里)。有资料说在 http://localhost:8088/manager 管理界面下可以 Start 和 Stop 来重新启动对应的 Context,但是我 Stop 后就是 Start 不起来。点了一下 Undeploy,就把 Context 删除了,注意:把 Context 对应的物理文件夹也给删除了!!就是说你做了个应用,移到这里,如果不小心,就给删了-比病毒还厉害。小心啊!!

下来我说一下 Jsp 连接 MySQL 的问题。如果用 Jsp 去连接 Access,我感觉就是把裙子穿在男人身上。Access 和 ASP 才是天造地设的一对。Jsp 连接 mySQL 或者 Oracle 才算合情合理。原因我认为是:用 Jsp 做开发,其优势就是跨 OS 平台,如果用 Jsp Access 组合,跨平台的优势就没有了。ASP 和 Access 已经工作的很好了,也简单,你何必要别扭的去用 Jsp 开发?当然,如果您对 Jsp 非常熟悉(或者对 Asp 非常不熟悉),或者非常喜欢 Jsp(或者非常不喜欢 Asp),或者您有大量的数据积累在 Access 里,您要用 Jsp Access 在技术上也不是不行的。
mySQL 的安装非常简单,基本安装完毕都能正常使用,建立数据库,设置用户,都可以在 mySQL 的环境下完成。就是对用惯了 GUI 界面的人,感觉不顺手。网上能下载到一些 mySQL 的图形用户界面的管理工具,但好象不是免费的。

用 Jsp 连接 mySQL 数据库,从表里取数据,写一段代码测试一下:

程序代码1:
<!--首先导入一些必要的packages-->
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<!--告诉编译器使用SQL包-->
<%@ page import="java.sql.*"%>
<!--设置中文输出-->
<%@ page contentType="text/html; charset=GB2312" %>

<html>
<head>
<title>mySQL test</title>
</head>
<body>
<%
Connection con;
Statement stmt;
ResultSet rs;

//加载驱动程序,下面的代码为加载MySQL驱动程序
Class.forName("com.mysql.JDBC.Driver");

//注册MySQL驱动程序
DriverManager.reGISterDriver(new com.mysql.jdbc.Driver());

//用适当的驱动程序连接到数据库
//String dbUrl = "jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=GB2312";
//String dbUser = "root"; //用户名
//String dbPwd = "abcd1001"; //密码
//建立数据库连接
//con = java.sql.DriverManager.getConnection(dbUrl, dbUser, dbPwd);

String dbUrl ="jdbc:mysql://localhost:3306/mysql?user=root&password=abcd1001&useUnicode=true&characterEncoding=gb2312";
con = DriverManager.getConnection(dbUrl);

//创建一个JDBC声明
stmt = con.createStatement();

//增加新记录
//stmt.executeUpdate("INSERT INTO books (id,name,title,price) VALUES ('999','Tom','Tomcat Bible',44.5)");

//查询记录
rs = stmt.executeQuery("select * from user");

//输出查询结果
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);
String col4 = rs.getString(4);
//打印所显示的数据
out.println("<tr><td>" col1 "</td><td>" col2 "</td><td>" col3 "</td><td>" col4 "</td></tr>");

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java常见面试题(含答案)

下一篇:ant 中文手册--介绍