Jsp与Mysql连接探究查错
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,一、前言在阅读本文档之前,你的Win2000下应该已经安装好了Apache、JDK、Tomcat、PHP、MySQL.如果你还没有成功地安装好这些软件,你可以参阅Apache1.3.20在Window
千家信息网最后更新 2025年01月21日Jsp与Mysql连接探究查错一、前言
在阅读本文档之前,你的Win2000下应该已经安装好了Apache、JDK、Tomcat、PHP、MySQL.如果你还没有成功地安装好这些软件,你可以参阅Apache1.3.20在Windows下的使用、Windows下JDK1.3.1的安装、Tomcat在Win2000下的安装、PHP在Win2000下的安装、MySQL在Win2000下的安装进行安装.
在本文档中,我们并不准备对PHP、MySQL、JSP作过多的解释,我们将假定你已经大致掌握了PHP、MySQL、JSP.我们仅仅是探讨在Win2000下,使用PHP和JSP连接MySQL的方法.
二、MySQL的前期准备
在我们之前安装的MySQL中,我们仅仅是使用了系统初始的root用户.在本文中,我们不准备继续使用root用户,虽然我们是在一个试验环境下工作,但是养成一个良好的习惯是至关重要的,因为我们将来面对的将可能是一个完全开放的Internet.和在绝大多数情况下一样,MySQL中对root用户的滥用也有可能导致MySQL的崩溃.
MySQL安装后的初始情况有点怪怪的,要正确地增加用户并设置用户权限,我们有必要对mysql库中的表User及DB进行清理.
首先,在命令行方式下进入c:/mysql/bin目录,直接输入mysql,你会进入MySQL的客户端程序MYSQL(在下面,我们用MYSQL特指MySQL的客户端程序,而在其他场合,我们将会使用MySQL).在"mysql>"提示符后输入:
show databases;
你会看到初始状态下,MySQL下有两个数据库:mysql和test,test库反正对我们也没什么用,留着反而会混淆视听,所以我们不妨将其删除:
drop database test;
有关用户及其权限保存在mysql数据库中,其中关键是db表和user表,现在,我们可以先将db表清空:
use mysql;
delete from db;
然后我们对user库进行清理,并进行刷新:
delete from user where user='' or host='localhost';
flush privileges;
现在,用quit退出MYSQL.
现在,你将不能直接输入mysql进入MYSQL了(那种情况实际上是不需要用户认证进入了MYSQL).你只能输入mysql -u root -p.
如果之前你为root用户设置了密码,这时会提示你输入密码,如果你还没有设置,直接按回车键就可以进入MYSQL了.
没有口令的root用户的存在是一个很恐怖的情况,你最好先退出客户端程序用我们在MySQL在Win2000下的安装中讲述的方法为root设置一个口令后再进入MYSQL.
我们建立一个用于使用的新的数据库:
create database my_test;
在这个库中建立一个数据表:
use my_test;
create table my_test_table (test_column char(20) not null);
在这个表中增加一行:
insert my_test_table values ('Hello,I'm MySQL!');
现在我们用grant命令建立一个新的用户yzysy,该用户只对my_test这个库有SELECT、UPDATE、INSERT以及DELETE的权限.该用户的密码也是yzysy:
grant SELECT,UPDATE,INSERT,DELETE on my_test.* to yzysy identified by 'yzysy';
有关grant命令的详细说明请参看MySQL用户手册.
第三用PHP连接MYsql省略
四、JSP连接MySQL
JSP连接MySQL要稍微复杂一点.
首先你必须从http://www.mysql.com/Downloads/Contrib/mm.mysql.jdbc-1.2c.tar.gz下载mm.mysql.jdbc-1.2c.tar.gz,然后将其解压到本地硬盘的一个目录下(我们使用的是c:/mm.mysql.jdbc-1.2c.
然后在CLASSPATH系统变量的最后添加c:/mm.mysql.jdbc-1.2c;(此处/应该是反斜杠)
创建一个JavaBean,名为DBconn.java,在Tomcat的/webapps/examples/WEB-INF/classes下建立一个mysqltest目录,将该文件保存在这个目录中,DBconn.java用来封装与数据库链接的操作.DBconn.java的内容如下:
package Mysqltest;
import java.sql.*;
public class DBconn
{String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/my_test";
String MyUser="yzysy";
String MyPassword="yzysy";
Connection conn = null;
ResultSet rs = null;
public DBconn()
{try
{Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{System.err.println("DBconn (): " + e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{rs = null;
try
{conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}
}
我们注意到在这段程序是只有
String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/my_test";
带有MySQL的特色,其余的程序与其他JDBC应用并没有什么不同.
利用JDK的Javac命令编译DBconn.java形成相应的class文件.
在Tomcat的/webapps/examples/jsp目录下建立Mysqltest.jsp文件.其内容如下:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" import="java.sql.*" %>
<%
ResultSet RS = DBconn1.executeQuery
("SELECT * FROM my_test_table");
while (RS.next()) {
out.print("" + RS.getString("test_column")
");
}
RS.close();
%>
在这儿,你已经看不到任何MySQL的痕迹了.
现在在浏览器的地址栏中输入http://localhost/examples/jsp/Mysqltest.jsp,你应该可以看到黑体的"Hello,I'm MySQL!".
五、结语
现在,你的Win2000下已经成功地搭建了一个零成本的Web服务器.不过,我个人以为,在Win2000下只能作为一个开发环境,真正要投入使用,还有使用linux能得到更多的性能和安全上的保证.(End)
************************************************************
其实就错了那一点,Mysql驱动程序的指向,我按其说的那样做,结果Tomcat总是报没有合适的驱动,
我为了验证指向目标的目录正确性,把《超级马力兄弟》游戏放到这个目录里,在DOS窗口输入《超级马力兄弟》游戏名,游戏可以找到,说明CLASSPATH设置正确,那就是说,JSP服务器没有来这找,无论我怎么试都无济于事,从此恶梦成了我的好朋友......
在我重新安装好XPServer后我把mm.mysql.jdbc-1.2c目录下的ORG目录全部拷贝到Tomcat40CLASSES下,不承想竟然成功了:
所有由新奇世界 iNENS 提供http://vip.6to23.com/wocienyoung
因为驱动程序是String DBDriver="org.gjt.mm.mysql.Driver"所以要把ORG整个目录全考过来,至此整个连接调试完成,JSP真正是一次编写处处使用,(顺便说一句,我在Linux下用的是Resin,在Profile里面直接Export Classprth就找到Mysql的驱动了)看来环境不同,什么就有可能不同,在此写出来希望对那些增在寻求办法的有所帮助.
[@more@]
在阅读本文档之前,你的Win2000下应该已经安装好了Apache、JDK、Tomcat、PHP、MySQL.如果你还没有成功地安装好这些软件,你可以参阅Apache1.3.20在Windows下的使用、Windows下JDK1.3.1的安装、Tomcat在Win2000下的安装、PHP在Win2000下的安装、MySQL在Win2000下的安装进行安装.
在本文档中,我们并不准备对PHP、MySQL、JSP作过多的解释,我们将假定你已经大致掌握了PHP、MySQL、JSP.我们仅仅是探讨在Win2000下,使用PHP和JSP连接MySQL的方法.
二、MySQL的前期准备
在我们之前安装的MySQL中,我们仅仅是使用了系统初始的root用户.在本文中,我们不准备继续使用root用户,虽然我们是在一个试验环境下工作,但是养成一个良好的习惯是至关重要的,因为我们将来面对的将可能是一个完全开放的Internet.和在绝大多数情况下一样,MySQL中对root用户的滥用也有可能导致MySQL的崩溃.
MySQL安装后的初始情况有点怪怪的,要正确地增加用户并设置用户权限,我们有必要对mysql库中的表User及DB进行清理.
首先,在命令行方式下进入c:/mysql/bin目录,直接输入mysql,你会进入MySQL的客户端程序MYSQL(在下面,我们用MYSQL特指MySQL的客户端程序,而在其他场合,我们将会使用MySQL).在"mysql>"提示符后输入:
show databases;
你会看到初始状态下,MySQL下有两个数据库:mysql和test,test库反正对我们也没什么用,留着反而会混淆视听,所以我们不妨将其删除:
drop database test;
有关用户及其权限保存在mysql数据库中,其中关键是db表和user表,现在,我们可以先将db表清空:
use mysql;
delete from db;
然后我们对user库进行清理,并进行刷新:
delete from user where user='' or host='localhost';
flush privileges;
现在,用quit退出MYSQL.
现在,你将不能直接输入mysql进入MYSQL了(那种情况实际上是不需要用户认证进入了MYSQL).你只能输入mysql -u root -p.
如果之前你为root用户设置了密码,这时会提示你输入密码,如果你还没有设置,直接按回车键就可以进入MYSQL了.
没有口令的root用户的存在是一个很恐怖的情况,你最好先退出客户端程序用我们在MySQL在Win2000下的安装中讲述的方法为root设置一个口令后再进入MYSQL.
我们建立一个用于使用的新的数据库:
create database my_test;
在这个库中建立一个数据表:
use my_test;
create table my_test_table (test_column char(20) not null);
在这个表中增加一行:
insert my_test_table values ('Hello,I'm MySQL!');
现在我们用grant命令建立一个新的用户yzysy,该用户只对my_test这个库有SELECT、UPDATE、INSERT以及DELETE的权限.该用户的密码也是yzysy:
grant SELECT,UPDATE,INSERT,DELETE on my_test.* to yzysy identified by 'yzysy';
有关grant命令的详细说明请参看MySQL用户手册.
第三用PHP连接MYsql省略
四、JSP连接MySQL
JSP连接MySQL要稍微复杂一点.
首先你必须从http://www.mysql.com/Downloads/Contrib/mm.mysql.jdbc-1.2c.tar.gz下载mm.mysql.jdbc-1.2c.tar.gz,然后将其解压到本地硬盘的一个目录下(我们使用的是c:/mm.mysql.jdbc-1.2c.
然后在CLASSPATH系统变量的最后添加c:/mm.mysql.jdbc-1.2c;(此处/应该是反斜杠)
创建一个JavaBean,名为DBconn.java,在Tomcat的/webapps/examples/WEB-INF/classes下建立一个mysqltest目录,将该文件保存在这个目录中,DBconn.java用来封装与数据库链接的操作.DBconn.java的内容如下:
package Mysqltest;
import java.sql.*;
public class DBconn
{String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/my_test";
String MyUser="yzysy";
String MyPassword="yzysy";
Connection conn = null;
ResultSet rs = null;
public DBconn()
{try
{Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{System.err.println("DBconn (): " + e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{rs = null;
try
{conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}
}
我们注意到在这段程序是只有
String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/my_test";
带有MySQL的特色,其余的程序与其他JDBC应用并没有什么不同.
利用JDK的Javac命令编译DBconn.java形成相应的class文件.
在Tomcat的/webapps/examples/jsp目录下建立Mysqltest.jsp文件.其内容如下:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" import="java.sql.*" %>
<%
ResultSet RS = DBconn1.executeQuery
("SELECT * FROM my_test_table");
while (RS.next()) {
out.print("
" + RS.getString("test_column")
+"
");}
RS.close();
%>
在这儿,你已经看不到任何MySQL的痕迹了.
现在在浏览器的地址栏中输入http://localhost/examples/jsp/Mysqltest.jsp,你应该可以看到黑体的"Hello,I'm MySQL!".
五、结语
现在,你的Win2000下已经成功地搭建了一个零成本的Web服务器.不过,我个人以为,在Win2000下只能作为一个开发环境,真正要投入使用,还有使用linux能得到更多的性能和安全上的保证.(End)
************************************************************
其实就错了那一点,Mysql驱动程序的指向,我按其说的那样做,结果Tomcat总是报没有合适的驱动,
我为了验证指向目标的目录正确性,把《超级马力兄弟》游戏放到这个目录里,在DOS窗口输入《超级马力兄弟》游戏名,游戏可以找到,说明CLASSPATH设置正确,那就是说,JSP服务器没有来这找,无论我怎么试都无济于事,从此恶梦成了我的好朋友......
在我重新安装好XPServer后我把mm.mysql.jdbc-1.2c目录下的ORG目录全部拷贝到Tomcat40CLASSES下,不承想竟然成功了:
所有由新奇世界 iNENS 提供http://vip.6to23.com/wocienyoung
因为驱动程序是String DBDriver="org.gjt.mm.mysql.Driver"所以要把ORG整个目录全考过来,至此整个连接调试完成,JSP真正是一次编写处处使用,(顺便说一句,我在Linux下用的是Resin,在Profile里面直接Export Classprth就找到Mysql的驱动了)看来环境不同,什么就有可能不同,在此写出来希望对那些增在寻求办法的有所帮助.
[@more@]
用户
目录
程序
输入
数据
命令
情况
数据库
驱动
不同
成功
客户
客户端
密码
文件
权限
环境
装好
准备
兄弟
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
四川pdu服务器电源什么牌子好
网络安全写作文100字
恩施专业的软件开发价格
实况足球手游数据库
数据库审计日志在哪
上海品牌软件开发商家
梦幻西游129数据库
交投集团网络安全岗位职责
网络安全低怎么解决
计算机网络安全作文
安装数据库界面点不了
mc国际服服务器即将推出
服务器域名解析后打开是iis7
国家网络安全宣传课件
网络技术对教学的好处
5c网络技术培训
软件放服务器安全吗
如何注意校园网络安全
企业网络安全方案策划
感叹号图标软件开发
图书馆管理系统软件开发计划书
魔兽世界时光之穴服务器
网络安全信息中
美测服内部服务器错误
大陆集团汽车软件开发
国家科技成果数据库
网络安全法 标语
软件开发人员交接文档
db2数据库操作
期刊两大数据库