




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、bs结构下的邮件系统的设计与开发 摘要 随着网络的逐渐普及,email在人们生活中应用日益广范,除了专业的邮件服务系统之外,一般大型网站与单位都提供了email服务。因此,本次设计是通过对smtp、pop3协议的熟悉和理解、以及对jsp编程和网页设计技能的掌握,开发出一个简单的b/s结构下的邮件服务系统。能完成邮件的发送、接收、以及附件处理功能等。主要运用的软件有eclipse,sqlserver,在java环境下,利用jsp编程来实现邮件系统的各种功能。该系统主要支持用户的身份验证,用户只有通过正确注册后才能进入该系统。在系统中可以查看自己的邮件也可以发送邮件到任意的邮箱,发邮件的时候可以进
2、行附件的发送。通过本次课题的学习和研究掌握了基本的web编程技能,更实践了自我的动手能力。同时认识到在信息化高速发展的今天,高效、快速、方便的邮件收发系统将得到越来越多的人关注和使用,它将给人们带来更方便快捷的生活。 关键词:b/s;邮件系统;smtp;pop3;jsp 1引言 1.1课题背景 随着网络的逐渐普及现在的人们对于电子邮件已经不再陌生了,自从电子邮件进入人们的生活以来,人们对传统的信件已经不再依赖,它的可靠、快速、方便、灵活、廉价、内容丰富等特点都在使我们更加喜欢和接受它。近年来,电子邮件飞速发展,可以看到在比较专业、服务比较全面周到的网站基本上都有免费电子邮件服务。他们大部分都是
3、通过各种软件进行开发的。而在当今很流行的java技术中就包含有javamailapi,它提供了大量的类和接口来与网络邮件传输。关于jsp,最近两年,jsp技术发展十分迅速,它的兴起让it人员耳目一新,实现了长期以来的梦想。它的出现无疑是当今计算机技术通向计算时代的一个非常重要的里程碑。因此,本次毕业设计就是利用java技术来实现简单的邮件发送和接收的功能。 1.2课题研究意义 对于用户来说一款简单,方便,快捷的邮件收发系统将会在很大程度上为用户提供满意的服务,制作一款能满足用户需求的邮件收发系统是每一个设计者所追求的目标。因此希望通过本次设计完成一个简单的邮件收发系统,实现邮件的接收与发送,并
4、能完成附件的传输,同时能实现邮件用户登录管理及邮件删除等功能。从课题研究中更深入的了解邮件收发系统的设计原理,发现设计过程中的不足和知识的欠缺,为今后做出更好的设计打下一个坚实的基础。 2相关技术和开发平台 2.1开发环境的选择 整个系统开发完全采用browser/server模式,开发平台为java平台,以tomcat为jsp引擎和web服务器,后台数据库使用sqlserver2000。 在开发模式上选择browser/server模式,是因为b/s模式有以下优点: 1开发成本及维护成本降低。由于b/s架构管理软件只安装在服务器端(server)上,网络管理人员只需要管理服务器就行了,用户界
5、面主要事务逻辑在服务器(server)端完全通过www浏览器实现,极少部分事务逻辑在前端(browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。 2良好的安全性能,防火墙技术可以保证后台数据库的安全性。所有客户端请求都是通过dbms来访问数据库,从而大大减少了数据直接暴露的风险。因此系统的架构就采用了b/s设计模式。 2.2jsp技术 1.jsp简介 jsp(javaserverpages)是由sunmicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准,在传统的网页html文件(*.htm,*.html)中加入java程序片段(scriptlet)
6、和jsp标记(tag),就构成了jsp网页(*.jsp)。web服务器在遇到访问jsp网页的请求时,首先执行其中的程序片段,然后将执行结果以html格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送email等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无plugin,无activex,无javaapplet,甚至无frame。 在sun正式发布jsp(javaserverpages)之后,这种新的web应用开发技术很快引起了人们的关注。jsp为创建高度动态的web应用提供了一个独特的开发环境。
7、jsp与microsoft的activeserverpages兼容,但是它是使用类似html的卷标以及java程序代码段,而不是vbscript。 2.sql2000简介 在本次毕业设计中,应用到了数据库,在毕业设计中采用的是sql2000数据库系统,所以在这个地方有必要对其进行简单的介绍。 sql是一种数据库所用的标准语言,全名为structuredquerylanguage。microsoftsqlserver是基于sql的客户服务器数据库。它是一个高性能、多用户的关系型数据库,具有高容量的事务处理及决策支持功能,使用户能够用它建立大范围的分布式系统。 基本上,sqlserver也是数据库
8、的一种,与access数据库一样,主要的功能就是用来存储数据,但相对于access数据库来说,sqlserver又多了一些数据库应有的功能,整理如下: (1)安全性:在sqlserver中提供了账号管理的功能。对于数据库中所存储的数据,可通过账号与密码的管理,达到数据保密的目的。 (2)集中性:在access数据库中,一个文件就是一个数据库,不易集中管理,而sqlserver则是将所有的数据库都放在同一个server中,方便用户管理。 (3)记录性:在sqlserver中,有一个log文件,是专门用来记录用户在数据库中所进行的改变。例如,新增了哪几条记录,删除哪几条记录,若将来发现执行错误,即
9、可利用undo(恢复)将执行过的动作,恢复成未改变之前的数据存储状态。 (4)备份性:对于access数据库而言,所谓的备份就是将文件再复制一份,而sqlserver中则设计有一套很完整的数据库备份系统,让用户可以既方便又容易地备份数据。 (5)完整性:由于sqlserver中提供了很多数据库相关功能,算是一个更为完整的数据库系统。 sqlserver作为windows数据库家族中出类拔萃的成员,其稳定性和安全性是无与伦比的,这也是网站建设至关重要的。随着sqlserver2000的推出,其易用性、可扩展性、稳定性等方面又有了明显增强。因此,我们选择sqlserver作为建立网站数据库的工具。
10、 2.3系统所需协议介绍 smtp(简单邮件传输协议)负责邮件的发送和传输,使用tcp25端口,首先用户写好邮件之后发送给smtp服务器,smtp将邮件转换为ascii码并添加报头,发送出去,邮件在internet中路由交换到达目的地的邮件服务器,对方的smtp将邮件的ascii码解码。 smtp协议是随着internet的发展逐渐规范化和进一步完善的。smtp协议最早在rfc821中被定义,它提供了internet上两个节点之间传送信息的一种方式。smtp协议非常的简单和直观,在rfc821中,smtp由一些通过ascii码表示的命令字组成,通过这些命令字,两个节点之间(客户机和服务器)可以
11、建立smtp连接,并进行信息传递。 pop协议(电子邮局协议)是一种允许用户从邮件服务器收发邮件的协议。它有两种版本,即pop2和pop3,都具有简单的电子邮件存储转发功能。pop2与pop3本质上类似,都属于离线式工作协议,但是由于使用了不同的协议端口,两者并不兼容。与smtp协议相结合,pop3是目前最常用的电子邮件服务协议。 pop3除了支持离线工作方式外,还支持在线工作方式。在离线工作方式下,用户收发邮件时,首先通过pop3客户程序登录到支持pop3协议的邮件服务器,然后发送邮件及附件;接着,邮件服务器将为该用户收存的邮件传送给pop3客户程序,并将这些邮件从服务器上删除;最后,邮件服
12、务器将用户提交的发送邮件,转发到运行smtp协议的计算机中,通过它实现邮件的最终发送。在为用户从邮件服务器收取邮件时,pop3是以该用户当前存储在服务器上全部邮件为对象进行操作的,并一次性将它们下载到用户端计算机中。一旦客户的邮件下载完毕,邮件服务器对这些邮件的暂存托管即告完成。使用pop3,用户不能对他们贮存在邮件服务器上的邮件进行部分传输。离线工作方式适合那些从固定计算机上收发邮件的用户使用。 当使用pop3在线工作方式收发邮件时,用户在所用的计算机与邮件服务器保持连接的状态下读取邮件。用户的邮件保留在邮件服务器上。 2.4系统所需配置简介 1.tomcat tomcat是一个免费的开源的
13、serlvet容器,它是apache基金会的jakarta项目中的一个核心项目,由apache,sun和其它一些公司及个人共同开发而成。由于有了sun的参与和支持,最新的servlet和jsp规范总能在tomcat中得到体现。 在tomcat中,应用程序的部署很简单,用户只需将自己的war放到tomcat的webapp目录下,tomcat会自动检测到这个文件,并将其解压。用户在浏览器中访问这个应用的jsp时,通常第一次会很慢,因为tomcat要将jsp转化为servlet文件,然后编译。编译以后,访问将会很快。另外tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户
14、名和密码存储在一个xml文件中。通过这个应用,辅助于ftp,用户可以在远程通过web部署和撤销应用。当然本地也可以。 基于tomcat的开发其实主要是jsp和servlet的开发,开发jsp和servlet非常简单,你可以用普通的文本编辑器或者ide,然后将其打包成war即可。这里要提到另外一个工具ant,ant也是jakarta中的一个子项目,它所实现的功能类似于unix中的make。只需要写一个build.xml文件,然后运行ant就可以完成xml文件中定义的工作,这个工具对于一个大的应用来说非常好,只需在xml中写很少的东西就可以将其编译并打包成war。事实上,在很多应用服务器的发布中都
15、包含了ant。另外,在jsp1.2中,可以利用标签库实现java代码与html文件的分离,使jsp的维护更方便。 tomcat在jbuder中不用配置,但是在用eclipce中就需要配置:首先安装好tomcat,然后把tomcat的包apache-tomcat-5.5.15在myeclipce下进行配置就可以了。配置好后绑定,启动。myeclipce下面进行介绍。 2.eclipse和myeclipse 相比于大量的java开发工具,不可否认borland的jbuider和eclipse是最可靠也是最普遍的。相比于jbuider,eclipse小巧,速度上更是大大超越了jbuider,所以这次
16、设计用的是eclipse。 eclipse是一个开放源代码的、与netbeans、sunonestudio和borlandjbuider类似的一种基于java的整合型可扩展开发平台,也是目前最著名的开源项目之一,就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,eclipse附带了一个标准的插件集,包括java开发工具(javadevelopmenttools,jdt)。其未来的目标不仅仅是成为专门开发java程序的ide环境,根据eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。 eclipsesdk(软件开发者包)是e
17、clipseplatform、jdt和pde所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到eclipseplatform中的工具。eclipsesdk由eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。eclipse项目生产的软件以cpl发布,第三方组件有各自自身的许可协议。 myeclipse企业级工作平台(myeclipseenterpriseworkbench,简称myeclipse)是对eclipseide的扩展,利用它我们可以在数据库和j2ee的开发、发布,以及应用程序服务器的整合方面极大的提
18、高工作效率。它是功能丰富的j2ee集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持html,struts,jsf,css,javascript,sql,hibernate。 在结构上,myeclipse的特征可以被分为7类: (1)j2ee模型 (2)web开发工具 (3)ejb开发工具 (4)应用程序服务器的连接器 (5)j2ee项目部署服务 (6)数据库服务 (7)myeclipse整合帮助 对于以上每一种功能上的类别,在eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。myeclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。3系统需求分析与总体设计 3.1系统设计目的 本次毕业设计所要完成的,是一个tomcat服务器下的邮件收发平台,该平台功能类似于outlook,但是由于时间的关系,只是实现了outlook的部分功能,但是该平台是基于web的一个b/s应用程序,它不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 林业有害生物防治与森林生态平衡考核试卷
- 糖尿病防控与策略课件
- 学生校服服装培训
- 一年级道德与法治下册 第一单元 班级小主人 第二课 今天我值日教学设计 粤教版
- 新材料新技术对产品设计创新的启示考核试卷
- 新闻信息简报培训
- 人教版高中物理精讲精练-必修1专题强化三:追及、相遇问题 (解析版)
- 人教版高中物理精讲精练-必修1专题强化二:连接体模型 (解析版)
- 教改工作总结述职
- 旅游景区项目总体定位
- 快消部门2024年度营销活动计划表
- 【MOOC】跨文化思想交流英语-南京理工大学 中国大学慕课MOOC答案
- 《异常子宫出血诊断与治疗指南(2022版)》解读
- 2024年房地产行业市场发展趋势与预测
- 山东省职业院校技能大赛中职组“工业分析检验”赛项规程
- 孕期妊娠期糖尿病
- 建设项目环境保护管理条例
- 2024年业务流程外包(BPO)协议
- 硬件测试岗位招聘笔试题及解答(某大型集团公司)
- 幼儿园小班健康《太阳感冒了》课件
- 医学教程 《小儿腹泻》课件
评论
0/150
提交评论