jsp大作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1前言 (1)
1.1、需求分析 (1)
2正文 (1)
2.1、分析和设计 (1)
2.1.1 设计数据库 (1)
2.1.2设计jsp页面 (2)
3相关说明 (7)
3.1、关键技术和说明 (7)
3.2、待改进的部分说明 (7)
3.3、设计总结 (8)
1前言
1.1、需求分析
随着互联网的迅猛的发展,网站给我们带来不少的便利,于此同时,论坛基本是每个网站必有的功能,为用户之间的交流提供的很好的平台。我通过仔细的分析和规划,但是为了维护论坛交流的安全性和隐私性的到保护,基本所有的论坛都有注册和登陆窗口,这不仅维护了论坛的利益,也维护了论坛成员的信息安全。
这些功能的具体描述如下:
1)用户注册模块:当用户注册时,搜索数据库中有没有和用户要注册的帐号一样的。如果有,注册失败,提醒用户重新选择一个帐号注册;如果没有,注册成功,并将用户信息存储到数据库中。当用户登陆时,搜索数据库看是否有这个用户,如果有,检验密码;如果没有,登陆失败,提示用户。用户可以修改自己原来的注册信息。
2)登录模块:在新建成功的用户名和密码进行登陆,如果登陆成功,则将用户名缓存在Session里面。如果数据库中没有该用户名,则登陆失败;如果有这个用户名,而密码错误,同样提示错误信息,用户也可以修改自己原来的注册信息。
2正文
2.1、分析和设计
设计网站论坛时,首先应该要清楚对用户信息的采样包含哪儿些,将所需采样信息非为关键信息和非关键信息。关键信息:用于区分本用户和其他用户的差别,便于在账号丢失后找回账号,非关键信息:用于丰富用户资料,便于论坛内部成员加强交流。数据库设计
通过以上的分析:
2.1.1 设计数据库
数据库应有一个表,id、uid、pwd、nickname、name、gender、career、address、email、tel、birth。本登陆窗口采用SQL Server数据库。
具体各表的设计如下:
2-1
该数据库表里有一个id字段,它必须被设置成标识,并且“标识种子”为1,递增量为1,否则程序中要插入数据时将出错,这个字段没有实际用处,仅仅用来编号。
2.1.2设计jsp页面
2.1.2.1 注册模块:
这一部分总共设计了3个页面reg1.jsp、reg2.jsp和reg3.jsp.
(1)reg1.jsp:本页面提供用户注册表单,上面列出了一系列需要用户填写的内容。对于表单的验证,在客户端可以通过JavaScript对表单内容格式上的正确性进行验
证。
2-2
(2)reg2.jsp:确认表单。如果reg1.jsp中的内容通过了客户端的验证,则将用户填写的表单提交到reg2.jsp,该页面将会显示用户已经填写的内容,让用户确认,如果确认无误则点击“确认”进行提交,如果需要进行修改可以返回上一页修改。
2-3
(3)reg3.jsp:如果在reg2.jsp页面,用户点击“确认”提交,则进入reg3.jsp。即正式将用户的信息添加到数据库中,并且提示“祝贺您,您的信息已经添加到数据
库中”的信息。
2-4
2.1.2.2 登陆模块:
登陆部分涉及到的JSP文件包括default.jsp、logo.jsp、logoff.jsp、edit1.jsp和edit2.jsp。
文件结构图:
2-5
:登陆页面。用户可以输入用户名和密码并提交。
(1)default.jsp Array
2-6
(2)logo.jsp:验证用户输入的用户名和密码是否正确。如果正确,就将该用户的信息
保存到Seion里,如果不正确,就提示出错信息。
2-7
(3)logoff,jsp:退出登陆。主要的功能是将用户信息从Session里删除。
(4)edit.jsp:将用户信息从数据库里读出,放到表单里,供用户参考。
2-8
(5)edit2.jsp:将修改后的信息重新保存到数据库里。
2-9
3相关说明
3.1、关键技术和说明
在网站的设计中用到的关键就技术如下:
1 通过视图将各个表中的数据联系起来,可以对数据进行高效率的操作。(具体的操作在数据库设计中已经介绍,在次就不赘述)。
2 使用脚本(javascript)实现系统当前时间的显示、用户登录是的录入信息控制、系统提示。
3 通过Application对象实现网站访问量的统计,并通过
4用一段程序代码来处理乱码,可以美化视图,尤其时向数据库提交数据时,是非常关键的。<%! //处理字符窜乱码
public String getStr(String str){
try{
String temp_p=str;
String temp=new String(temp_p.getBytes("iso-8859-1"),"gb2312");
return temp;
}
catch(Exception e){}
return "NULL";
}
%>
5把数据库的连接文件放在一个文件里,既方便以后的修改,也提高的编码的效率。
3.2、待改进的部分说明
采取JSP+javabean或者JSP+javabean+Serverlet技术,这样能提高程序代码的从用性和处理数据的效率。
3.3、设计总结
经过一个星期的上机实践学习,使我对java语言和jsp有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是语法结构还不行,对于一个问题要思考很久才能解决,通过学习也有所改进;再有对java语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对jsp中经常出现的错误也不了解,对于数据库的连接也经常有问题。通过实践,使我在这几个方面的认识有所提高。
通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习jsp,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。