电子邮件收发系统.doc_第1页
电子邮件收发系统.doc_第2页
电子邮件收发系统.doc_第3页
电子邮件收发系统.doc_第4页
电子邮件收发系统.doc_第5页
免费预览已结束,剩余14页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Web技术与设计大作业报告题目: 电子邮件收发系统专 业:软 件 工 程年 级: 112 级学号: 2011014320 姓名: 余仲凯 指导老师:刘晓利目 录摘要:1引言21需求分析21. 1 安全需求21.2 性能需求21.3 功能需求22系统开发模式及技术22.1 JSP简介22.2 JSP的特点22.3 JSP技术22.4 访问WEB数据库常见技术32.5 本系统采用的数据库访问技术32.6 B/S开发模式33总体设计33.1 系统功能描述33.2 E-R模型33. 3 系统流程图33.4 数据流图33.5 系统功能模块划分43.6 数据库设计44详细设计44.1 前台系统的设计44.2后台管理系统的设计4总结4致谢4参考文献:4 摘要:随着Internet的迅速发展,社会已经进入了网络时代,人们越来越倾向于从Internet获取信息。本系统利用jsp动态网页技术和sql Server 2000数据库,以mvc模式开发,实现。 JSP是由Sun Micmsystems公司倡导,多家公司参与一起建立的一种动态网页技术标准,它为创建动态Web应用提供了一个简捷而快速的方法。其优势表现在以下方面:JSP技术是基于平台和服务器独立的:JSP内置支持XML技术,使得开发者能够定制自己的标签;JSP对数据库的访问主要通过JDBC来实现的。对于只支持ODBC的数据库,可以通过JDBCODBC Bridge来实现访问;JSP的安全性很高,它在执行前要编译成字节码,再由Java虚拟机执行。关键词: jsp; sql Server 2000; 电子邮件; 1引言 电子邮件Intranet/Intemet上一项非常重要的服务闭,给人们的工作和生活带来很大的便利。然而很多用户使用的电子邮件服务是由几家大网站提供的,很少有公司或单位拥有自己的电子邮件系统。如果拥有自己的电子邮件系统,会让信息的传送更加快捷方便、安全可靠,并且能更大程度上满足个性化的需要。本文实用JSP技术实现了电子邮件系统的核心功能,现将其设计思路和具体编程实现介绍如下。1需求分析1.1 安全需求采用sql server 2000 数据库了安全性能较高,采用mvc模式,是代码变得更强壮;1.2 性能需求1)时间要求一般操作的响应时间应在2-4秒内,对后台数据库的操作也应在可接受的时间内完成。2)数据精确度要求要求输入、输出数据;删除,修改记录等要保证关键字的完整性。1.3 功能需求1. 登录管理:包括用户注册、登录和找回密码。u 注册新用户:用户可以通过申请注册使用。主要是完成收集,存用户注册时填写的信息。(没实现)u 用户登录:主要功能用户登录的用户名密码与数据库中的信息进行验证。登录成功后可以修改个人密码,管理员还可以管理用户信息。2. 邮件收发:包括写邮件、收邮件、发送邮件。u 写邮件:包含发送的主题,邮件文本内容,可以添加附件。u 发送邮件:选择发送方式,如发送或保存;对非法邮件进行拦截。u 收邮件:获得新邮件,对新邮件进行过滤分类。3. 邮箱管理:包括收件箱,草稿箱,发件箱和垃圾箱。u 收件箱:可以查看邮件,下载邮件的附件,删除无用的邮件。u 草稿箱:用户可以对保存的邮件进行查看和删除。u 发件箱:用户可以查看曾发送的邮件,删除记录。u 垃圾箱:可以选择彻底删除垃圾邮件,或者还原邮件。4. 通讯录模块:包括建立通讯录、查看通讯录和删除通讯录。u 新建通讯录:主要包括添加联系人的基本信息。u 查看通讯录:主要对联系人管理操作,如删除指定联系人。u 群发邮件:通过单击“选择通讯录”可以对指定联系人群发邮件。2系统开发模式及技术2.1 JSP简介 JSP是由SunMicrosystems 公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段 (Scriptlet)和JSP标签,就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要 的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可 以访问JSP网页。JSP全名为java server page,其根本是一个简化的Servlet设 计,他实现了Html语法中的java扩张(以 形式)。JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web 服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以 操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网 页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基 于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处 理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。2.2 JSP的特点(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP的局限性JSP的优势是显而易见的。1(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。(5)支持服务器端组件。web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。JSP可以使用成熟的JAVA BEANS 组件来实现复杂商务功能。2.3 JSP技术用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小 脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件 中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用 JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用 JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这既有助于作者保护自己的代码,又能保证任何基于 HTML的Web浏览器的完全可用性。2.4 访问WEB数据库常见技术Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操 作。Sun公司还开发了JDBCODBC bridge,利用此技术Java程序可以访问带有ODBC驱动程序的数据库,大多数数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如 Oracle、Sybase、MS SQL Server和MS Access等数据库。此外,通过开发标识库,JSP技术可以进一步扩展。第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来进行工作。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且能扩展到支持企业级的分布式应用中。作为 采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java的,而且所有的JSP页面都被编译成为Java Servlets,所以JSP页面具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一 次编写,各处运行”的特点。2.5 本系统采用的数据库访问技术 利用JDBC的SQLSERVER驱动2.6 B/S开发模式本系统采用B/S模式的三层体系结构即客户浏览器,应用服务器,数据库系统,如图所示:浏览器服务器数据库请求响应请求响应第一层 客户机为用户与整个系统的接口。客户端的应用程序简化到一个通用的浏览器,由它来解释HTML,显示网页内容。这里网页具有一定的交互功能,支持用户在网页提供的表单上输入信息提交给后台,并提出处理请求。这里的后台即第二层的WEB服务器。第二层 WEB服务器将启动相应的进程来响应浏览器的请求,并动态生成嵌入处理结果的HTML代码返回给客户机浏览器。如果客户机的请求还包括数据存取,WEB服务器还需与数据库服务器协同完成这一处理任务11。第三层 数据库服务器的任务类似于C/S模型,负责协调不同WEB服务器发出的SQL请求,管理操作数据库。3总体设计3.1 系统功能描述1. 登录管理模块:对用户身份进行验证以及权限的设置等。本模块分三个子模块,注册新用户模块的功能是向系统注册新用户的基本信息;用户登录模块的功能是使用本系统上注册的用户名和密码登录;修改密码模块的功能是通过先验证用户原密码然后修改成新密码。2. 邮件收发模块:对用户的邮件收发进行详细的管理。本模块分为三个子模块,写邮件模块的功能是用来录入邮件的内容;收邮件模块的功能是用来接收、过滤并分类邮件信息;发送邮件模块的功能包括操作方式(发送和保存到草稿箱)和存储邮件。3. 邮箱管理模块:是对邮箱中的邮件信息进行详细的管理。本模块分为四个子模块,收件箱的功能是用来查看和删除邮件;发件箱模块的功能是用来存储用户发送过的邮件信息;草稿箱模块的功能是实现对保存的邮件进行编辑和删除;垃圾箱模块的功能是用来存放垃圾邮件和用户删除的邮件。4. 通讯录管理模块:是对所有联系人的信息管理。本模块分为三个子模块,新建通讯录模块的功能是联系人信息;查看通讯录模块的功能是列出所有联系人的信息进行查看和删除;删除通讯录模块的功能是删除单个联系人的操作;邮件群发是在通讯录列表中选择指定联系人群发邮件。3.2 E-R模型本系统中主要涉及到用户,邮箱,信件三个实体,它们之间有着这样的关系。用户使用信箱,信箱里装有信件,一个信箱里可以存放多封信件因此是1:N的对应关系。用户要收发和操作信件。他们之间的关系用E-R图分别表示如下列图所示: 用户用户名密码邮箱信箱收信箱草稿箱已发信件设置1:1用户与信箱 E-R图信箱信件收信箱草稿箱已发信件日期主题大小内容收件人包含1:N信箱与信件 E-R图用户信件收件人用户名密码邮箱日期大小内容主题发送N1:用户与信件 E-R图3.3 系统流程图用户登陆身份验证主操作页面收信写信退出系统NOYES发送失败附件发 送失败 3.4 数据流图系统的顶层数据流图3.5 系统功能模块划分(1) 邮箱申请功能模块:用户可以通过申请注册使用。主要是完成收集,存用户注册时填写的信息。(2) 用户登陆模块:主要功能用户登陆的ID与存档ID进行验证。(3) 邮箱管理功能模块:用户可以对所有信件进行操作,编辑,删除。个人资料管理填写。(4) 邮件收发功能模块:主要是用户收信模块方便查看信件的主题,大小及信件详细内容等,发信模块可以对内容的编辑,指定收件人。(5) 读邮件功能:提供用户阅读收信箱里信件。(6) 通讯录管理:主要对联系人编辑操作,如添加,删除,修改。3.6 数据库设计 草稿箱: 收件箱: 发件箱:垃圾箱:通讯录:用户:4详细设计4.1 前台系统登陆界面:主要代码:function check1() if(document.ThisForm.userName.value=) alert(请输入用户名);document.ThisForm.userName.focus();return false; if(document.ThisForm.userPw.value=) alert(请输入密码);document.ThisForm.userPw.focus();return false; if(document.ThisForm.userType.value=-1) alert(请选择登陆身份);document.ThisForm.userType.focus();return false; document.getElementById(indicator).style.display=block; loginService.login(document.ThisForm.userName.value,document.ThisForm.userPw.value,document.ThisForm.userType.value,callback);function callback(data) document.getElementById(indicator).style.display=none; if(data=no) alert(用户名或密码错误); if(data=yes) alert(通过验证,系统登录成功); window.location.href=/loginSuccess.jsp; function reg() window.location.href=/userReg.jsp; 和电子邮件   FORM name=ThisForm action=/adminLogin.action method=post 用户名:      密 码:    img src=/images/luck.gif width=19 height=18 登录身份: -请选择登陆身份-管理员用户   img id=indicator src=/images/loading.gif style=display:none/ img src=/images/login-wel.gif width=242 height=138  4.2 后台管理系统的设计 登陆后界面:主要代码:table width=100% border=0 cellpadding=0 cellspacing=0 background=/images/topbg.gif   电子邮件系统 您好:     !- 网站主页- 注销退出显示主框架和 基本操作 a href=/auser/index/sysPro.jsp target=main系统属性 a href=/auser/userinfo/userPw.jsp target=main密码修改 邮件操作 a href=/auser/email/emailAdd.jsp target=main新邮件 a href=/fajianxiang_me.action target=main发件箱 a href=/shoujianxiang_me.action target=main收件箱 a href=/caogaoxiang_me.action target=main草稿箱 a href=/lajixiang_me.action target=main垃圾箱 我的通讯录 a href=/tongxunluMy.action?userId=$sessionScope.user.userId target=main我的通讯录 a href=/auser/tongxunlu/tongxunluAdd.jsp target=main添加通讯录 a href=/auser/tongxunlu/emailAddQun.jsp?userId=$sessionScope.user.userId target=main邮件群发 总结 在Web技术的发展过程中,软件体系所采用的方式由早期的基于C/S (Client/Server)模式应用系统向基于B/S(Brower/Server)模式应用系统进行了改变。邮件管理系统是基于B/S模式应用的系统,它解决了传统的网站系统不能够很好的集成和维护的缺点,采用较灵活的Struts2的框架进行系统设计,使得系统具有很好的维护性和可扩展性。邮件管理系统建设的难点,关键是适应多变的应用需求,如何快速高效的建设各类管理信息系统成为困扰开发者的一大难题。在实际的系统开发中,首先设计出共性的软件开发框架,然后随着研究的深入和应用的拓展,不断地完善框架基础上的构件,逐步形成合理的网站系统,无疑是一种良好的解决方法。我在进行毕业设计的过程中,不断地遇到各种问题,然后分析问题产生的原因进而想方设法解决问题。这样一方面使系统的设计逐步完善,另一方面使自己不断积累软件设计方面的技巧。其中一些比较深刻的经验体会,首先要根据软件工程来制定出一套适合自己的软件开发时间和进程,严格按照时间和进程来进行操作,然后是一定要做好系统分析,系统开发的关键在于对系统进行需求分析,在开发一个系统的初期,首先要对系统的整个工作流程,需要实现的功能,用户的需求等进行充分的分析。在做好需求分析的前提下才能顺利的完成整个系统的开发,否则可能会在开发的过程中出现不断修改不断出错的问题,甚至是一段时间后发现之前所做的设计与要求相去甚远而必须丢弃重做。这将给系统的开发带来很大的麻烦,甚至直到最后也未能达到理想的开发效果。其次是开发数据库应用系统一定要做好数据库的分析与设计,完全整理通顺系统中的数据流图,各部分E-R图和系统总体E-R图后才进行数据库的逻辑结构设计。我就因为开始设计数据库中的邮件存储不合理,导致程序做出来后删除后的邮件在邮箱中出现错误,结果要重新设计数据库和重新写数据访问层的程序,甚至有点耽误了进度,所以数据库的设计十分重要,需要仔细考虑。这次开发的邮件管理系统在基本功能上已经完成,设计了邮件系统所有功能块,系统的关键部分主要集中在通信簿的管理和邮件管理两部分上。该系统可以根据需求对功能进行扩展和完善。另外,此邮件系统可以作为某一系统的某一部分,可以把此系统作为组件形式,稍作修改添加到所要开发的系统中。致谢 近一个学期的毕业设计已经结束了,在这段设计时间里,我得到了许多师生的关心和帮助,尤其是我的指导教老师,非常感谢我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论