




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用JSP打造一个留言板用JSP打造一个留言板2001-04-24 陈小冲 yeskyJSP是JavaServer Pages的简称,是一种集成HTML及Java程序于一个网页的技术。我觉得使用JSP编写程序比ASP、PHP等语言更具有挑战性,更能学到知识,因为它涉及到面向对象的JAVA语言,要用好JSP,就得对JAVA有一定的了解。除此之外,还要求能熟练使用各种开发工具,像Dreamweaver、Photoshop、JBuilder等。工欲善其事,必先利其器。在运行JSP程序之前,必须做一些准备工作。首先要有一个WEB伺服器,Apache或IIS都可以;其次要有一个执行JAVA程序的的编译器;再次还要有一个支持JSP的引擎,目前有很多引擎可供选择,例如tomcat、weblogic、resin等。本问介绍的留言板程序在作者的机器上可以顺利运行,详细资料如下:操作系统:Windows 2000 SERVERJAVA编译器:JDK1.3WEB伺服器:Apache1.13.2 + Tomcat3.1引擎数据库:Access 2000Apache和Tomcat安装后的配置有点挑战性,下面是我的安装过程:1).安装JDK1.3a).双击 J2SDK1_3_0-WIN.exe 文件,安装到 C:jdk1.3 目录下; b).更新下列环境变量,把C:jdk1.3libtools.jar;C:jdk1.3libdt.jar; C:myclasses加入到CLASSPATH中。更新方法:右击 我的电脑-属性-高级-环境变量; c).重起计算机。2).安装Apache1.13.2a).双击 apache_1_3_12_win32.exe 文件,安装到 C:Apache 目录下;b).用记事本修改 C:Apacheconfhttpd.conf:I).PORT:设置Apache Web Server运行时使用的端口号,我把它改成Port 8080,以后在浏览器上输入http:/ip:8080 就可以访问到Apache Web Server服务器;II).SERVERNAME:我把SERVERNAME设置为34(这是我的机器的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.1a).用WinZIP把tomcat.zip解压缩到一个目录下,最后弄成C:/tomcat; b).打开C:Apacheconfhttpd.conf文件,在该文件最后加上类似这样一句话: Include C:/tomcat/conf/tomcat.conf;c).修改Tomcat运行的端口号,注意Tomcat自己有一个独立的HTTP服务器,它必须使用一个还未被使用的端口号,我使用PORT:80,在C:tomcatconfserver.xml中修改;d).将SET TOMCAT_HOME=c:tomcat SET JAVA_HOME=c:jdk1.3 加到 C:tomcatbintomcat.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:tomcatstartup.bat启动Tomcat;f).在浏览器上输入http:/ip/,如果能看到Tomcat Version 3.1这一页,就表示Tomcat安装成功了。到此准备工作也就差不多了,最后在Tomcat目录下创建一个目录,用来存放编写的程序,具体情况如下:C:tomcatfox -存放 .html和 .jsp 文件C:tomcatfoximages -存放图片文件C:tomcatfoxglobal -存放数据库C:tomcatfoxWEB-INFclasses -存放JAVA类文件为了使这个目录下的JSP程序能顺利运行,还需要在 C:tomcatconf server.xml文件中加上几行代码:Context path=/fox docBase=foxdefaultSessionTimeOut=30isWARExpanded=trueisWARValidated=false isInvokerEnabled=trueisWorkDirPersistent=false/ 添加完代码后的server.xml文件看起来如下所示:.Context path= docBase=webapps/ROOT debug=0 reloadable=true /ContextContext 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:tomcatfoxtest.jsphtml 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:tomcatfoxglobalfoxdb.mdb。接下来在foxdb.mdb中创建一个表,命名为foxtable,表中有五个字段,全为文本格式:其中“URL”用于记录留言者的 IP 。至于各字段的长度,我把“留言”定为200,其它四个各为20。2).指定ODBC数据源,其名为foxdb ,指向 C:tomcatfoxglobalfoxdb.mdb。二.编写用户的留言界面 foxnote.html,存于C:tomcatfoxfoxnote.html:htmlbodyform method=post action=foxnoteinsert.jsp br姓名: input name=username size=15 value=br邮箱: input name=email size=15 value= br留言: brtextarea name=doc rows=5 cols=40/textarea br input type=submit value=递交 input type=reset value=重填 /form /body/html 在IE中键入 http:/ip/fox/foxnote.html 看看是否显示正常三.编写 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:tomcatfoxWEB-INFclassesMyUtil.java ,编译后的MyUtil.class文件也存于此。import java.io.*; public class MyUtilpublic static String gb2312ToUnicode(String s)tryreturn new String(s.getBytes(ISO8859_1),gb2312); catch(UnsupportedEncodingException uee)return s; public static String unicodeTogb2312(String s)tryreturn new String(s.getBytes(gb2312),ISO8859_1);catch(UnsupportedEncodingException uee)return s;四.编写 foxnoteview.jsp用于浏览数据库表中已有的留言,存于C:tomcatfoxfoxnoteview.jsp ,代码如下:htmlbody % page contentType=text/html;charset=gb2312 language=java import=java.sql.*%Connection con=null;tryClass.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=#FFFFFFtr bgcolor=#FFFFFF td width=15% height=25 align=centeri作者/i/tdtd width=28% height=25 align=centeri发表时间/i/tdtd width=22% height=25 align=centeriEmail/i/tdtd width=35% height=25 align=centeri留言内容/i/td%while(rs.next() out.println(TRtd align=centerfont size=2 color=#999999+rs.getString(作者)+/TD;out.println(TDfont size=2color=#999999+rs.getString(Email)+/font/TD;out.prin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025特定技术咨询顾问聘请合同模板
- 《认识11~20(第三课时)》(教学设计)-2024-2025学年一年级上册数学西师大版
- 2025《YY市住宅小区物业管理合同》
- 2025养生馆员工劳动合同模板
- 事业单位聘用合同模板
- 2025兄弟股权转让合同
- 第15课 怪兽奇想教学设计-2025-2026学年小学美术苏少版三年级下册-苏少版
- 2025消毒清洁服务合同
- 活动二 让小猪的房子更安全教学设计-2025-2026学年小学综合实践活动一年级上册沪科黔科版
- 2025的租房转让合同
- 2025年上半年湖北十堰竹山招募三支一扶高校毕业生聘用为事业单位人员12人易考易错模拟试题(共500题)试卷后附参考答案
- 餐饮服务明厨亮灶建设工作方案
- 兽医化验员专业知识考试题及答案
- 福建台湾海峡大桥建设工程可行性研究报告
- (完整)注册安全工程师考试题库(含答案)
- 高考作文素材积累与写法总结27 自知与知人作文审题指导及素材积累
- 电子政务概论-形考任务5(在线测试权重20%)-国开-参考资料
- 2024年贵州省贵阳市中考生物地理合卷试题(含答案逐题解析)
- DNDC模型使用手册
- 起重机械生产单位质量安全总监-特种设备考试题库
- JBT 9189-2016 水基材料防锈试验方法 铸铁屑试验
评论
0/150
提交评论