php+mysql 视频教程,在线数据检索,希望对大家有启示

回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

JDK+Tomcat+Servlet连接Mysql数据库

经过几天的调试、查阅资料,终于将Mysql数据库连接上了。虽然这几天一直郁闷,一直找不到原因,忽然霍然开朗,心情还是很舒畅的。毕竟觉得这几天的努力没有白费。喜悦之余把调试过程全程记录了下来。
一、开源软件
Tomcat 5.0.28
JDK j2sdk1.4.2_03
JDBC mysql-connector-java-3.1.13-bin.jar
Mysql 5.0
二、配置环境
将以上开源软件从相应的官方网站上下载后,依次进行安装。
我安装的顺序及路径分别为:
JDK: D:\j2sdk1.4.2_03
Tomcat:D:\jakarta-tomcat-5.0.28
Mysql: C:\program files\mysql (默认路径)
JDBC: 将下载下来的JDBC驱动解压缩,我放在了D:\jdb目录下。

开始进行环境变置配置:右键单击“我的电脑”选择属性,高级——环境变量,在系统变量下,选“新建”,具体配置如下:
变量名 变量值
CATALINA_HOME D:\jakarta-tomcat-5.0.28
classpath .;D:\j2sdk1.4.2_03\lib\tools.jar;
D:\j2sdk1.4.2_03\jre\lib\rt.jar;
D:\Tomcat 5.0\common\lib\servlet-api.jar;
D:\j2sdk1.4.2_03\lib\mysql-connector-java-3.1.13-bin-g.jar;
D:\jdbc\mysql-connector-java-3.1.13-bin.jar
JAVA_HOME D:\j2sdk1.4.2_03

注意:
1\在classpath设置时,.;是不能省略的,它代表了当前路径。
2\将下载下来的JDBC驱动解压缩后,可以看到mysql-connector-java-3.1.13-bin.jar文件及相关的文件夹,打开其中的debug文件夹,可以找到mysql-connector-java-3.1.13-bin-g.jar文件。
3\在classpath中设置D:\Tomcat 5.0\common\lib\servlet-api.jar;是为了使Servlet可用。

三、下载SQLyog,将这个小程序安装后,可以使mysql数据库变为可见。自我感觉比mysql-front好用。
四、用Servlet建立一个bookstore数据库,并插入数据。若运行成功打印“success!”否则抛出异常打印“加载数据库失败”。(此程序摘自孙鑫的JAVA Web开发详解一书)
1、D盘建立文件夹JSPLesson\ch08,在ch08文件夹下中建立src和WEB-INF子文件夹,在WEB-INF文件夹下,建立classes子文件夹。
2、在src文件夹中建立CreateDBServlet.java文件,内容如下:
package org.sunxin.lesson.jsp.bookstore;

import javax.servlet.*;
import java.io.*;
import javax.servlet.http.*;
import java.sql.*;

public class CreateDBServlet extends HttpServlet
{
private String url;
private String user;
private String password;

public void init() throws ServletException
{
String driverClass=getInitParameter("driverClass");
url=getInitParameter("url");
user=getInitParameter("user");
password=getInitParameter("password");
try
{
Class.forName(driverClass);
}
catch(ClassNotFoundException ce)
{
throw new UnavailableException("加载数据库驱动失败!");
}
}

public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException,IOException
{
Connection conn=null;
Statement stmt=null;
try
{
conn=DriverManager.getConnection(url,user,password);
stmt=conn.createStatement();
stmt.executeUpdate("create database bookstore");
stmt.executeUpdate("use bookstore");
stmt.executeUpdate("create table bookinfo(id INT not null primary key,title VARCHAR(50) not null,author VARCHAR(50) not null,bookconcern VARCHAR(100) not null,publish_date DATE not null,price FLOAT(4,2) not null,amount SMALLINT,remark VARCHAR(200)) ENGINE=InnoDB");
stmt.addBatch("insert into bookinfo values(1,'Java从入门到精通','张三','张三出版社','2004-6-1',34.00,35,null)");
stmt.addBatch("insert into bookinfo values(2,'JSP深入编程','李四','李四出版社','2004-10-1',56.00,20,null)");
stmt.addBatch("insert into bookinfo values(3,'J2EE高级编程','王五','王五出版社','2005-3-1',78.00,10,null)");
stmt.executeBatch();

PrintWriter out=resp.getWriter();
out.println("success!");
out.close();
}
catch(SQLException se)
{
se.printStackTrace();
}
finally
{
if(stmt!=null)
{
try
{
stmt.close();
}
catch(SQLException se)
{
se.printStackTrace();
}
stmt=null;
}
if(conn!=null)
{
try
{
conn.close();
}
catch(SQLException se)
{
se.printStackTrace();
}
conn=null;
}
}
}
}
2、编译CreateDBServlet.java生成org\sunxin\lesson\jsp\bookstore\CreateDBServlet.class文件。将其剪切到classes文件夹中。
3、部署Servlet
在%CATALINA_HOME%/conf/Catalina/localhost目录下,配置运行目录,建立ch08.xml文件
ch08.xml
<Context path="/ch08" docBase="D:\JSPLesson\ch08" reloadable="true"/>

4、按Web应用程序的目录层次结构,在F:\JSPLesson\ch08\src目录下建立WEB-INF目录,在WEB-INF目录下建立classes目录和web.xml文件,编辑web.xml文件。
Web.xml
<?xml version="1.0" encoding="gb2312"?>

<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/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">

<servlet>
<servlet-name>CreateDBServlet</servlet-name>
<servlet-class>org.sunxin.lesson.jsp.bookstore.CreateDBServlet</servlet-class>
<init-param>
<param-name>driverClass</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306/mysql</param-value>
</init-param>
<init-param>
<param-name>user</param-name>
<param-value>root</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>root</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>CreateDBServlet</servlet-name>
<url-pattern>/createdb</url-pattern>
</servlet-mapping>

</web-app>

5、配置MySQL的JDBC驱动,从网站上下载JDBC驱动MySQLConnector/J,在解压缩后的目录中,找到名为mysql-connector-java-3.1.7-bin.jar的JAR包,放到%CATALINA_HOME%\common/lib目录下。
6、启动TOMCAT,启动mysql,输入http://localhost:8080/cho8/createdb

输出success!表明创新数据库和表已成功。
五、我所犯的错误
1、页面出现以下提示
HTTP Status 404 - /ch08/createdb

type Status report
message /ch08/createdb
description The requested resource (/ch08/createdb) is not available.

Apache Tomcat/5.0.28
经检查是ch08.xml文件少了个引号。
2、启动IE输入地址后,页面一片空白,什么字也没有。经检查是因为我的mysql数据库中已有bookstore数据库,也已插入数据,所以页面既没有success!也没有报错。手动将已存在的bookstore数据库删除后,重启Tomcat,启动IE输入地址后,出现正确结果“success!”
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

很详细,辛苦了!谢谢分享!
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

JDK+Tomcat+Servlet连接Mysql数据库

经过几天的调试、查阅资料,终于将Mysql数据库连接上了。虽然这几天一直郁闷,一直找不到原因,忽然霍然开朗,心情还是很舒畅的。毕竟觉得这几天的努力没有白费。喜悦之余把调试过程全程记录了下来。

读lili58帖,技术高深,羡慕不已,但旋及发现,此为转帖,便如骨梗在喉了.
一点建议,对楼主也是广大C'ers:
The original source and author, either here on corpus4u or academically elsewhere, should always be EXPILICITLY and UNMISLEADINGLY acknowledged.:rolleyes:
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

http://v.ku6.com/show/JE1EltEY5VAaOZet.html

以后我找到更多内容也会发上来,大家一起研究学习。


上面已经写的非常清楚了。我以后会把“找到内容再发上来”。你何必如此跟我过不去。讽刺人的能力我很佩服。
上次你发个东西考大家,我就开个玩笑回说, 不难。。你还特地给我发2个悄悄话说我,我很想说,既然你的学生都做的那末快,你何不把你的方法发出来?!何必总是故弄玄虚?!你发的帖子中说“你的学生都做的可快了,”给我悄悄话又说:“你的这个东西不是那末简单,希望我是真的做了。说起来容易,做起来难。”你的话不是前后矛盾?!

我今天发这个是为了大家学习,难道是为了出我自己的风头?!我刚在一个帖子里还表扬了你,看来人心不是一样的大度,呵呵;

好,感谢xusun的批评,我以后不发了。

其实很简单的一句话, 如果你是诚意批评,说希望发的时候指明出处,诚意的批评我当然感受的到,我也不会说什么,因为昨天找到时候感觉这个帖子不错,马上复制发上来。的确着急了。
但你的文才多用在。。。。

不管怎么说,我错了。为了惩罚我自己,我封贴2个月。绝不食言10.18-12.18,希望后来的朋友以次为鉴!
 
Last edited:
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

lili58 友不要生气吗,你提供的东东是很有价值的.我们支持你!
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

你发的帖子中说“你的学生都做的可快了,”给我悄悄话又说:“你的这个东西不是那末简单,希望我是真的做了。说起来容易,做起来难。”你的话不是前后矛盾?!

Aha, my god! It is true that I have said on more than one occasion, via more than one media and to more than one C'er that my students are good and quick hands at alignment, but who should have said that "“你的这个东西不是那末简单,希望我是真的做了。说起来容易,做起来难。”? I am curious if the english i use is the same as urs. :D

Hereinnext is what was sent to lili58 privately:rolleyes::

glad u have ur idea about it. btw, i do hope that u do have tried it as i am wondering if the cliche still works that "easy said than done".
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

别吵了。大家还是讨论具体实现的细节吧。以后注意,转载别人的东西在帖子开头说一下,不然容易误会。

既然前面提到了 php+mysql,这里又提 Tomcat,这个是 JSP 的东西,两个不是一起的啊。我觉得搭建这样的系统,可以优先考虑 LAMP,就是 Linux + Apache + MySQL/PostgreSQL + php/perl/python
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

:哈哈, 吵吵有人气呵,打起来更好呢;). lili58可别惩罚自己了, take it easy:):):),要不咱也把自己惩罚一下 by lurking (Laohong 语):p:p
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

JDK+Tomcat+Servlet连接Mysql数据库

经过几天的调试、查阅资料,终于将Mysql数据库连接上了。虽然这几天一直郁闷,一直找不到原因,忽然霍然开朗,心情还是很舒畅的。毕竟觉得这几天的努力没有白费。喜悦之余把调试过程全程记录了下来。
一、开源软件
Tomcat 5.0.28
JDK j2sdk1.4.2_03
JDBC mysql-connector-java-3.1.13-bin.jar
Mysql 5.0
二、配置环境
将以上开源软件从相应的官方网站上下载后,依次进行安装。
我安装的顺序及路径分别为:
JDK: D:\j2sdk1.4.2_03
Tomcat:D:\jakarta-tomcat-5.0.28
Mysql: C:\program files\mysql (默认路径)
JDBC: 将下载下来的JDBC驱动解压缩,我放在了D:\jdb目录下。

开始进行环境变置配置:右键单击“我的电脑”选择属性,高级——环境变量,在系统变量下,选“新建”,具体配置如下:
变量名 变量值
CATALINA_HOME D:\jakarta-tomcat-5.0.28
classpath .;D:\j2sdk1.4.2_03\lib\tools.jar;
D:\j2sdk1.4.2_03\jre\lib\rt.jar;
D:\Tomcat 5.0\common\lib\servlet-api.jar;
D:\j2sdk1.4.2_03\lib\mysql-connector-java-3.1.13-bin-g.jar;
D:\jdbc\mysql-connector-java-3.1.13-bin.jar
JAVA_HOME D:\j2sdk1.4.2_03

注意:
1\在classpath设置时,.;是不能省略的,它代表了当前路径。
2\将下载下来的JDBC驱动解压缩后,可以看到mysql-connector-java-3.1.13-bin.jar文件及相关的文件夹,打开其中的debug文件夹,可以找到mysql-connector-java-3.1.13-bin-g.jar文件。
3\在classpath中设置D:\Tomcat 5.0\common\lib\servlet-api.jar;是为了使Servlet可用。

三、下载SQLyog,将这个小程序安装后,可以使mysql数据库变为可见。自我感觉比mysql-front好用。
四、用Servlet建立一个bookstore数据库,并插入数据。若运行成功打印“success!”否则抛出异常打印“加载数据库失败”。(此程序摘自孙鑫的JAVA Web开发详解一书)
1、D盘建立文件夹JSPLesson\ch08,在ch08文件夹下中建立src和WEB-INF子文件夹,在WEB-INF文件夹下,建立classes子文件夹。
2、在src文件夹中建立CreateDBServlet.java文件,内容如下:
package org.sunxin.lesson.jsp.bookstore;

import javax.servlet.*;
import java.io.*;
import javax.servlet.http.*;
import java.sql.*;

public class CreateDBServlet extends HttpServlet
{
private String url;
private String user;
private String password;

public void init() throws ServletException
{
String driverClass=getInitParameter("driverClass");
url=getInitParameter("url");
user=getInitParameter("user");
password=getInitParameter("password");
try
{
Class.forName(driverClass);
}
catch(ClassNotFoundException ce)
{
throw new UnavailableException("加载数据库驱动失败!");
}
}

public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException,IOException
{
Connection conn=null;
Statement stmt=null;
try
{
conn=DriverManager.getConnection(url,user,password);
stmt=conn.createStatement();
stmt.executeUpdate("create database bookstore");
stmt.executeUpdate("use bookstore");
stmt.executeUpdate("create table bookinfo(id INT not null primary key,title VARCHAR(50) not null,author VARCHAR(50) not null,bookconcern VARCHAR(100) not null,publish_date DATE not null,price FLOAT(4,2) not null,amount SMALLINT,remark VARCHAR(200)) ENGINE=InnoDB");
stmt.addBatch("insert into bookinfo values(1,'Java从入门到精通','张三','张三出版社','2004-6-1',34.00,35,null)");
stmt.addBatch("insert into bookinfo values(2,'JSP深入编程','李四','李四出版社','2004-10-1',56.00,20,null)");
stmt.addBatch("insert into bookinfo values(3,'J2EE高级编程','王五','王五出版社','2005-3-1',78.00,10,null)");
stmt.executeBatch();

PrintWriter out=resp.getWriter();
out.println("success!");
out.close();
}
catch(SQLException se)
{
se.printStackTrace();
}
finally
{
if(stmt!=null)
{
try
{
stmt.close();
}
catch(SQLException se)
{
se.printStackTrace();
}
stmt=null;
}
if(conn!=null)
{
try
{
conn.close();
}
catch(SQLException se)
{
se.printStackTrace();
}
conn=null;
}
}
}
}
2、编译CreateDBServlet.java生成org\sunxin\lesson\jsp\bookstore\CreateDBServlet.class文件。将其剪切到classes文件夹中。
3、部署Servlet
在%CATALINA_HOME%/conf/Catalina/localhost目录下,配置运行目录,建立ch08.xml文件
ch08.xml
<Context path="/ch08" docBase="D:\JSPLesson\ch08" reloadable="true"/>

4、按Web应用程序的目录层次结构,在F:\JSPLesson\ch08\src目录下建立WEB-INF目录,在WEB-INF目录下建立classes目录和web.xml文件,编辑web.xml文件。
Web.xml
<?xml version="1.0" encoding="gb2312"?>

<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/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">

<servlet>
<servlet-name>CreateDBServlet</servlet-name>
<servlet-class>org.sunxin.lesson.jsp.bookstore.CreateDBServlet</servlet-class>
<init-param>
<param-name>driverClass</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306/mysql</param-value>
</init-param>
<init-param>
<param-name>user</param-name>
<param-value>root</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>root</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>CreateDBServlet</servlet-name>
<url-pattern>/createdb</url-pattern>
</servlet-mapping>

</web-app>

5、配置MySQL的JDBC驱动,从网站上下载JDBC驱动MySQLConnector/J,在解压缩后的目录中,找到名为mysql-connector-java-3.1.7-bin.jar的JAR包,放到%CATALINA_HOME%\common/lib目录下。
6、启动TOMCAT,启动mysql,输入http://localhost:8080/cho8/createdb

输出success!表明创新数据库和表已成功。
五、我所犯的错误
1、页面出现以下提示
HTTP Status 404 - /ch08/createdb

type Status report
message /ch08/createdb
description The requested resource (/ch08/createdb) is not available.

Apache Tomcat/5.0.28
经检查是ch08.xml文件少了个引号。
2、启动IE输入地址后,页面一片空白,什么字也没有。经检查是因为我的mysql数据库中已有bookstore数据库,也已插入数据,所以页面既没有success!也没有报错。手动将已存在的bookstore数据库删除后,重启Tomcat,启动IE输入地址后,出现正确结果“success!”

的确会让人误会,以为这就是楼主自己的经验之谈。
 
回复: php+mysql 视频教程,在线数据检索,希望对大家有启示

别吵了。大家还是讨论具体实现的细节吧。以后注意,转载别人的东西在帖子开头说一下,不然容易误会。

既然前面提到了 php+mysql,这里又提 Tomcat,这个是 JSP 的东西,两个不是一起的啊。我觉得搭建这样的系统,可以优先考虑 LAMP,就是 Linux + Apache + MySQL/PostgreSQL + php/perl/python
終於有人提到大名鼎鼎的LAMP!
強烈支持一下開源軟件!
 
Back
顶部