课程设计论文实现收发无附件的邮件.doc
《课程设计论文实现收发无附件的邮件.doc》由会员分享,可在线阅读,更多相关《课程设计论文实现收发无附件的邮件.doc(16页珍藏版)》请在三一办公上搜索。
1、课程设计任务书学生姓名: 专业班级: 计算机科学与技术学院 指导教师: 工作单位:计算机科学与技术学院 题 目: 收发无附件的邮件 初始条件:理论:学完“操作系统”和“计算机网络”课程,掌握一种高级程序设计语言(C+、C#、Java、Delphi)及集成开发平台的使用。实践:计算机学院科学系实验中心提供计算机、软件平台和网络环境。如果自己有计算机可以在其上进行设计。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1) 实现收发无附件的邮件。(2)主要功能: 1 邮箱用户可以通过导游栏轻松便捷的进入各个功能选项。2 完全的网上收发邮件、存储邮件、邮件草稿箱、删
2、除邮件功能。 3 邮箱用户可自行更改自己邮箱密码、设定个性化签名功能。 4 群发邮件功能, 给所有用户群发邮件功能;并提供对组的群发功能。(3)应用所学计算机网络课程中的知识,利用网络实用程序实现其协议。(4)编制好网络实用程序后,设计若干用例,上机测试并分析所设计的程序。(5)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括:设计题目;需求说明(要求、功能简述)或问题描述;设计说明(简要的分析与概要设计);详细的算法描述;源程序与执行结果(含测试方法和测试结果);使用说明;设计心得(设计的特点、不足、收获与体会);展望(该实用程序进一步改进扩展的设想)。时间安排:设计时间一周: 周
3、1:查阅相关资料。周2:系统分析,设计。周3周4:编程并上机调试周5:撰写课程设计报告。设计验收安排:16周星期五8:00起到计算机学院科学系实验中心进行上机验收。设计报告书收取时间:16周的星期五下午5:00之前。指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日1. 设计题目实现收发无附件的邮件2需求分析2.1要求通过一个实际网络协议或网络应用系统的分析与总体设计,综合运用应用所学计算机网络课程中的知识,利用网络实用程序实现其协议,加深对网络知识理解和掌握。具体要求邮箱用户可以通过导游栏轻松便捷的进入各个功能选项,完全的网上收发邮件、存储邮件、删除邮件功能。2.2功能简述本系
4、统是一个Web端的邮件收发系统,凡是具有POP3协议的收件邮箱和SMTP协议的发件邮箱,均可通过本系统来收发邮件。本系统实现的基本功能如下:1.登录:登录访问邮箱地址。2.退出:退出本系统。3.收取邮件:收取当前邮箱中的所有邮件列表。4.阅读邮件:阅读某一封邮件的内容。5.写邮件:撰写将要发送的邮件内容,包括收件人地址和正文内容。6.通讯录:维护通讯录列表,发送邮件时可以从通讯录中选择收件人。7.个性签名:可以添加多个签名,在发送邮件时可以选择使用某一个签名,在发送的邮件中就会显示此签名。本系统是一个多用户的系统,每一个拥有邮箱地址的用户都可以通过该系统管理自己的邮箱。3.设计说明3.1简要分
5、析 基于以上功能描述,只有一种角色可以使用该系统,即拥有邮箱地址的普通用户。对于日常收发邮件的过程,一般分为四部分:发送邮件到服务器;在网络上传送邮件到信箱,此即SMTP服务器所实现;接收并存储邮件并给用户提取,此即POP3服务器所实现;从POP3服务器上收取邮件。实现方面主要集中在第一四部分收发邮件的客户端上,其中和服务器的对话主要由简单邮件发送协议SMTP和邮局协议POP3规定其标准。(1)SMTP协议SMTP模型采用的是C/S(客户端/服务器)模式用户直接使用的是用于编写和发送的客户端软件,而通常的SMTP服务器运行在源何处呢个站点上,C/S之间的通信通过TCP/IP协议进行。与SMTP
6、服务器连接的端口号一般为25。SMTP会话过程的特点: 会话过程全部由发送文本完成,过程为交互式的请求应答模式; 命令是文本形式的; 每次会话服务器总是返回一定的响应码,表示客户端的请求是否被正确地回答; 会话过程有一定的顺序。(2) POP3协议通过POP,可以从Internet提供商的服务器下载邮件,并通过邮件程序来阅读邮件,或者处理邮件。POP3协议(邮局协议第3版)适用于C/S结构,其通信也是建立TCP连接的,通信过程中,POP3客户端向POP3服务器发送命令并等待回应,POP3命令同SMTP命令一样,均采用命令行形式,用ASCII码表示。与POP3服务器连接的端口号一般为110。3.
7、2概要设计 基于功能需求,主要设计两个流程: 文件夹收取邮件阅读邮件 撰写邮件发送邮件 此外包括两个模块的划分:通讯录:增加联系人,修改联系人,删除联系人。个性签名:增加个性签名,修改个性签名和删除个性签名。 综上,设计系统软件结构图如图1所示:图1 系统软件结构图4.详细算法描述4.1数据库设计描述4.1.1实体分析通讯录和个性签名是本系统的主要管理对象。通讯录实体:记录某一个邮件地址用户的通讯录列表,包括用户的邮件地址,联系人邮件地址,联系人姓名和联系人档案。个性签名实体:记录某一个邮件地址用户的个性签名列表,包括用户的邮件地址,签名名称和签名说明。4.1.2数据表设计表1和表2是数据库的
8、表结构。表1 通讯录表tblRecipient编号字段名称字段类型是否为空说明1Mailchar(255)否用户的邮件地址2Recipientchar(255)否联系人邮件地址3RecipientNamechar(255)是联系人姓名4MemoText是联系人档案表2 个性签名表tblSignature编号字段名称字段类型是否为空说明1Mailchar(255)否用户的邮件地址2Signaturechar(255)否签名名称3MemoText是签名说明4.2界面设计描述4.2.1登录和退出系统页面作为邮件收发系统的入口,需要填写的内容包括:接收地址,发送地址,信箱,登录密码等。页面如图2所示。
9、系统首先取得用户登录时输入的7个表单变量的值,然后设置系统使用数据库的连接地址,将这些变量保存在session中,登录以后就可以直接从session变量中取得这些输入和设置值。登录系统后,在导航栏有一个“退出”按钮,单击该按钮会跳转到页面,并传递一个logoff参数,值为yes。退出系统即要使所有的登录参数失败,因此此时清空用户输入的用户名,密码,域名,POP3接收地址和SMTP发送地址参数,然后输出Login.asp文件中的登录表单,依然显示如图2的登录界面。图2 登录界面当单击“登录”按钮时会跳转到login.asp,由该文件的头部代码执行验证。根据传递过来的login参数是否存在来确定进
10、入验证的分支,验证的代码如下:if (Request.Form(Login).Count 0)Server.ScriptTimeOut = 30;Session.Timeout = 30;Session.Contents(mailboxmaxsize) = 30; /-以MB字节为单位Session.Contents(mailusername)=Server.HTMLEncode(Request.Form(username);Session.Contents(mailpassword)=Server.HTMLEncode(Request.Form(password);Session.Conte
11、nts(domain) = Server.HTMLEncode(Request.Form(domain);Session.Contents(mail_suffix)=Server.HTMLEncode(+Request.Form(domain);Session.Contents(pop) = Server.HTMLEncode(Request.Form(pop);Session.Contents(popport) = Server.HTMLEncode(Request.Form(popport);Session.Contents(smtp) = Server.HTMLEncode(Reques
12、t.Form(smtp);Session.Contents(smtpport)=Server.HTMLEncode(Request.Form(smtpport);Session.Contents(mail) = Server.HTMLEncode(Request.Form(username) + + Request.Form(domain);Session.Contents(maildbconnectionstr) = DRIVER=Microsoft Access Driver (*.mdb);DBQ= + Server.MapPath(data.mdb);var pop;pop = Ser
13、ver.CreateObject(JMail.POP3);trypop.Connect(Session.Contents(mailusername),Session.Contents(mailpassword),Session.Contents(pop),Session.Contents(popport);Response.Redirect(frame.htm);catch(e)Response.Write(window.alert(未连接上邮件服务器,可能是用户名或密码错误););4.2.2收取邮件mail.asp设置的页面是用来浏览当前登录邮箱所接收到的邮件列表。该列表显示了登录邮箱中的所
14、有邮件。对于不在有保留价值的邮件,可以选择删除。单击发件人姓名或地址,或主题栏均可详细浏览某个邮件的详细内容。1.建立连接使用JMail组件建立与该邮箱的连接:var pop; pop = Server.CreateObject(JMail.POP3); pop.Connect(Session.Contents(mailusername),Session.Contents(mailpassword),Session.Contents(pop),Session.Contents(popport);该连接使用的是POP3协议。2.计算总页数预设每页最多可列出的邮件数,从邮箱连接对象POP中取出邮件
15、总页数pageCount,根据总页数与每页设置显示的邮件数目相除,取得要显示的邮件页数:var pageSize = 15; /-每页最多可列出的邮件数 var pageCount; /-邮件总页数 if (pop.Count % pageSize) != 0) pageCount = Math.floor(pop.Count / pageSize) + 1; else pageCount = Math.floor(pop.Count / pageSize);4.2.3阅读邮件在邮件列表显示页面中,单击某一封邮件的发件人或邮件的标题,即可跳转到邮件的阅读页面,如图7所示。图7 阅读邮件1.显示
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 论文 实现 收发 附件 邮件
链接地址:https://www.31ppt.com/p-4870063.html