闹的反义词:我打算建个JSP的留言板----需要准备那些,怎么配置

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/15 14:13:53
这两天开始学习JSP建站

打算从最基本的JSP留言板开始

请问需要准备那些

我的环境
WINXPSP2
IIS5。1
留言板原码已有

还要准备那些,怎么有机结合

可再追加100分

JSP是JavaServer Pages的简称,是一种集成HTML及Java程序于一个网页的技术。我觉得使用JSP编写程序比ASP、PHP等语言更具有挑战性,更能学到知识,因为它涉及到面向对象的JAVA语言,要用好JSP,就得对JAVA有一定的了解。除此之外,还要求能熟练使用各种开发工具,像Dreamweaver、Photoshop、JBuilder等。

工欲善其事,必先利其器。在运行JSP程序之前,必须做一些准备工作。首先要有一个WEB伺服器,Apache或IIS都可以;其次要有一个执行JAVA程序的的编译器;再次还要有一个支持JSP的引擎,目前有很多引擎可供选择,例如tomcat、weblogic、resin等。

本问介绍的留言板程序在作者的机器上可以顺利运行,详细资料如下:

操作系统: Windows 2000 SERVER

JAVA编译器: JDK1.3

WEB伺服器: Apache1.13.2 + Tomcat3.1引擎

数据库: Access 2000

Apache和Tomcat安装后的配置有点挑战性,下面是我的安装过程:

1).安装JDK1.3

a).双击 J2SDK1_3_0-WIN.exe 文件,安装到 C:\jdk1.3 目录下;

b).更新下列环境变量,把

C:\jdk1.3\lib\tools.jar;C:\jdk1.3\lib\dt.jar;C:\myclasses加入到CLASSPATH中。

更新方法:右击 我的电脑-属性-高级-环境变量;

c).重起计算机。

2).安装Apache1.13.2

a).双击 apache_1_3_12_win32.exe 文件,安装到 C:\Apache 目录下;

b).用记事本修改 C:\Apache\conf\httpd.conf:

I).PORT:设置Apache Web Server运行时使用的端口号,我把它改成Port 8080,以后在浏览器上输入http://ip:8080 就可以访问到Apache Web Server服务器;

II).SERVERNAME:我把SERVERNAME设置为202.38.126.134(这是我的机器的IP地址);

III).Apache安装完后在"开始-程序"菜单组中多了Apache Web Server菜单组,运行其中的Install Apache as a service,这样的话在“开始-设置-控制面板-服务”中就多了一个名为Apache的服务,您可以用它来启动或停止Apache服务;

IV).打开“开始-设置-控制面板-服务”,选Apache,按"开始"启动Apache服务。

c).在IE中输入http://ip:8080 (ip是你使用的机器的ip地址),Apache运行否?

3).安装Tomcat3.1

a).用WinZIP把tomcat.zip解压缩到一个目录下,最后弄成C:/tomcat;

b).打开C:\Apache\conf\httpd.conf文件,在该文件最后加上类似这样一句话:

Include C:/tomcat/conf/tomcat.conf;

c).修改Tomcat运行的端口号,注意Tomcat自己有一个独立的HTTP服务器,它必须使用一个还未被使用的端口号,我使用PORT:80,在C:\tomcat\conf\server.xml中修改;

d).将SET TOMCAT_HOME=c:\tomcat

SET JAVA_HOME=c:\jdk1.3 加到 C:\tomcat\bin\tomcat.bat文件中,修改完的文件如下:

......

rem Guess TOMCAT_HOME if it is not present

SET TOMCAT_HOME=c:\tomcat

SET JAVA_HOME=c:\jdk1.3 if not "%TOMCAT_HOME%" == "" goto gothome

下面还有......

e).双击C:\tomcat\startup.bat启动Tomcat;

f).在浏览器上输入http://ip/,如果能看到Tomcat Version 3.1这一页,就表示Tomcat安装成功了。

到此准备工作也就差不多了,最后在Tomcat目录下创建一个目录,用来存放编写的程序,具体情况如下:

C:\tomcat\fox --存放 .html和 .jsp 文件
C:\tomcat\fox\images --存放图片文件
C:\tomcat\fox\global --存放数据库
C:\tomcat\fox\WEB-INF\classes --存放JAVA类文件

为了使这个目录下的JSP程序能顺利运行,还需要在 C:\tomcat\conf\server.xml文件中加上几行代码:

<Context path="/fox" docBase="fox"
defaultSessionTimeOut="30"isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>

添加完代码后的server.xml文件看起来如下所示:

......
<Context path="" docBase="webapps/ROOT" debug="0" reloadable="true" >
</Context>
<Context path="/redfox" docBase="redfox" defaultSessionTimeOut="30" isWARExpanded="true" isWARValidated="false" isInvokerEnabled="true" isWorkDirPersistent="false"/>
<Context path="/test" docBase="webapps/test" debug="0" reloadable="true" >
</Context>

下面还有......

现在编写一个名为 test.jsp的程序,存于 C:\tomcat\fox\test.jsp

<html>
<body>
<%java.util.Date date=new java.util.Date(); %>
Hello! the time is now
<%out.println(date);%>
</body>
</html>

在IE中键入 http://ip/fox/test.jsp,如果能看到当前的时间,那么恭喜:可以开始编写留言板程序了。
一.创建数据库

1).打开Access2000,创建一个新的数据库,我将这个数据库命名为 foxdb.mdb,存在C:\tomcat\fox\global\foxdb.mdb。接下来在 eagle.mdb中创建一个表,命名为 foxtable,表中有五个字段,全为文本格式:

其中“URL”用于记录留言者的 IP 。至于各字段的长度,我把“留言”定为200,其它四个各为20。

2).指定ODBC数据源,其名为foxdb ,指向 C:\tomcat\fox\global\foxdb.mdb。

二.编写用户的留言界面 foxnote.html,存于C:\tomcat\fox\foxnote.html:

<html>
<body>
<form method="post" action="foxnoteinsert.jsp">
<br>姓名:
<input name=username size=15 value="">
<br>邮箱:
<input name=email size=15 value="">
<br>留言:
<br>
<textarea name=doc rows="5" cols="40">
</textarea>
<br>
<input type=submit value="递交">
<input type=reset value="重填">
</form>
</bocy>
</html>

在IE中键入 http://ip/fox/foxnote.html 看看是否显示正常(ip是你机器的ip地址)
三.编写 foxnoteinsert.jsp ,将用户的留言写进数据库表中:

<body bgcolor="#FFFFFF">
<%@ page import="java.sql.*,MyUtil,java.util.*"%>
<%
Connection con=null;
String username=MyUtil.gb2312ToUnicode(request.getParameter("username"));
String email=MyUtil.gb2312ToUnicode(request.getParameter("email"));
String doc=MyUtil.gb2312ToUnicode(request.getParameter("doc"));
String url=request.getRemoteAddr();
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); con=DriverManager.getConnection("jdbc:odbc:foxdb","","");
String str="insert into foxtable values(?,?,?,?);";
PreparedStatement pstmt=con.prepareStatement(str);
pstmt.setString(1,username);
pstmt.setString(2,email);
pstmt.setString(3,doc);
pstmt.setString(4,url);
pstmt.executeUpdate();
pstmt.close();
con.close();
}
catch(Exception e) {
out.println(e.getMessage());
}
%>

这个程序中有一些要说明的地方,就是其中用到了一个 JavaBean :MyUtil.class 。

MyUtil 的作用是字符串之间的转换。必需关注的是JSP的字符串以Unicode码表示,而留言板界面的表单却是以 gb2312 码表示。所以将用户的留言写进数据库还需要码间的转换。如果不转换而把留言直接写到数据库表,则会产生乱码。下面是 MyUtil 的原代码,存于C:\tomcat\fox\WEB-INF\classes\MyUtil.java ,编译后的MyUtil.class文件也存于此。

import java.io.*;
public class MyUtil{
public static String gb2312ToUnicode(String s){
try{
return new String(s.getBytes("ISO8859_1"),"gb2312");
}
catch(UnsupportedEncodingException uee){
return s;
}
}
public static String unicodeTogb2312(String s){
try{
return new String(s.getBytes("gb2312"),"ISO8859_1");
}
catch(UnsupportedEncodingException uee){
return s;
}
}
}
四.编写 foxnoteview.jsp ,用于浏览数据库表中已有的留言,存于C:\tomcat\fox\foxnoteview.jsp ,代码如下:

<html>
<body>
<%@ page contentType="text/html;charset=gb2312" language="java" import="java.sql.*"%>
<%
Connection con=null;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:foxdb","","");
Statement statement=con.createStatement();
ResultSet rs=statement.executeQuery("select * from foxtable");

%>
<table border="1" width="100%" cellspacing="0" cellpadding="0" align="center" bordercolorlight="#CCCCFF" bordercolordark="#FFFFFF">
<tr bgcolor="#FFFFFF">
<td width="15%" height="25" align="center"><i>作者</i></td>
<td width="28%" height="25" align="center"><i>发表时间</i></td>
<td width="22%" height="25" align="center"><i>Email</i></td>
<td width="35%" height="25" align="center"><i>留言内容</i></td>
<%
while(rs.next()){
out.println("<TR><td align=center><font size=2 color=#999999>"+rs.getString("作者")+"</TD>");
out.println("<TD><font size=2color=#999999>"+rs.getString("Email")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("留言")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("URL")+"</font></TD></TR>");
}
rs.close();
con.close();
}
catch(Exception e)
{
out.println(e.getMessage());
}
%>
</table>
</body>
</html>

到此,整个留言板程序就算是完工了。留言板在数据库应用中比较简单,但是加以变化则可以编写出各种各样的应用程序,操作各种各样的数据库^_^

通过反复实验,终于在IIS下集成了对JSP的支持,原打算不在使用IIS做Internet的服务,而使用Apache做为服务,但在Apache下对ASP的支持不是很好,而且不能支持ASP.NET,所以只好在IIS下想办法支持JSP.
通过反复比较,使用了TOMCAT作为JSP的服务支持.TOMCAT采用了和Apache同样的语言开发,设置和使用方法基本相同,在这里我使用了最新版本的TOMCAT 5.5 由于只是提供JSP环境下支持,所以未采用TOMCAT5.5的源代码及二进制文件,而是使用了相应的ZIP压缩包安装.注意该版本还提供了一个GUI下的安装文件,使用该安装文件安装过简单,不需要过多的配置,比较适合傻瓜型安装,但安装完成后修改配置比较麻烦,而且由于在同一服务器上同时提供各种脚本支持,因此GUI安装方式不利于将TOMCAT集成到IIS中,所以我们在这里采用了ZIP压缩包的安装方式.
注意:如果只想在服务器上支持JSP而对其他脚本不支持的话,则建议直接使用GUI安装方式.
关于TOMCAT的安装及配置没有统一的方式,网上虽有很多办法,但多少都有一点问题,更多的都是同一篇文章的反复转发,少有完整无误的,在此给出正确的配置方法!
首先下载JAVA 2 SDK工具包,在http://java.sun.com中需要下载J2SE 5.0 KD这个软件,注意在多数网站教程中,没有提到这个文件,但在安装TOMCAT 5.5中,这个文件是必须的.在J2SE 5.0这个软件包中集成了JDK和JRE,安装过程很简单,安装完成后检查该软件包中的JDK的版本为1.50版本,为最新的SDK版本.
JDK与JRE的区别在于,JRE是个简化版的运行环境(runtime enironment).JSP运行时需要一个JAVA编辑器,而JAVA编辑器在SDK中才有,在JRE中并未包含.
JDK安装完成后,确保设置了JAVA_HOME环境变量为你的JAVA环境的安装目录(JDK安装目录),而且要确保JAVA BIN目录包括在PATH环境变量中
如果未设置,则可通过如下命令设置:
c:\>set java_home=c:\jdk1.5.0
c:\>set path=%java_home%\bin;%path%
当然你也可以把这些变量直接设置成系统变量,这样每次启动机器的时候,就不需要手动设置了!
然后将TOMCAT压缩包解压缩,假设解压缩的地址为:C:\JACKARTA\JACKARTA_TOMCAT_5.5
设置catalina_home环境变量令其指向TOMCAT安装目录
set catalina_home=c:\JACKARTA\JACKARTA_TOMCAT_5.5
如果对这个变量感到奇怪,需要了解CATALINA是SERVLET容器的名字,而JSPER是JSP容器的名字,他们在一起即为tomcat服务器
然后进入TOMCAT中的BIN目录,执行STARTUP命令,如此将弹出一个新的命令窗口,而且可以看到启动消息,保证此窗口一直开着,服务器进程就要在此运行!
现在你就可以访问一下看看了,不过不同于你机器上IIS的访问,别忘记在访问地址后使用端口号8080,因为默认的80端口已经被IIS所使用!如果在页面在显示出TOMCAT的信息的话,那么恭喜你,你已经完成了JSP服务器的配置!

修改或者制作,可以使用Dreamweaver MX,但本身你是需要有HTML的功底,能看的明白这些代码,才能完成制作和修改!

建议装个win2000 而且装个apache
jdk tomcat MYSQL环境配置

DW 网站制作软件
PS 图片制作
FLASH 动画制作