电子邮件客户端毕业论文报告
- 格式:doc
- 大小:326.00 KB
- 文档页数:43
电子客户端软件目录第1章引言 (1)1.1电子介绍 (1)1.2开发背景 (2)1.3开发环境及运行环境 (3)1.3.1 开发环境 (3)1.3.2 运行环境 (3)第2章软件架构及系统用例图 (4)2.1系统架构: (4)2.2系统总体用例: (4)2.3程序功能框架图: (5)2.4发送类 (6)2.5附加小功能类 (6)第3章 SMTP协议的研究 (8)3.1.1 介绍SMTP协议 (8)3.1.2 SMTP模型 (8)3.2.1 SMTP协议的命令 (10)3.2.2 SMTP的应答 (18)第4章 RFC822 (20)4.1RFC822简单介绍 (20)4.2信件的头部 (21)第5章命名控件MAILSEND (28)5.1发送的类S MTP M AIL (28)5.2A DD E XTRA类 (39)第6章软件运行时的界面 (41)6.1新建账号 (41)6.2发送不带附件的 (42)6.3发送带附件的 (42)6.4验证发送是否成功 (43)第7章系统测试 (45)7.1同一SMTP服务器发送纯文本的测试 (45)7.2同一SMTP服务器发送带附件的测试 (45)7.3不同SMTP服务器发送测试 (46)第8章结论 (47)致谢 (48)参考文献 ................................................. 错误!未定义书签。
第1章引言1.1 电子介绍电子(简称E-mai1)又称电子信箱、电子邮政,它是—种用电子手段提供信息交换的通信方式。
它是全球多种网络上使用最普遍的一项服务。
这种非交互式的通信,加速了信息的交流及数据传送,它是—个简易、快速的方法。
通过连接全世界的Internet,实现各类信号的传送、接收、存贮等处理,将送到世界的各个角落。
到目前为止,可以说电子是Internet资源使用最多的一种服务,E-mai1不只局限于信件的传递,还可用来传递文件、声音及图形、图像等不同类型的信息。
基于C/S程序设计课程设计(论文)题目:电子邮箱客户端目录第1章课程设计的目的与要求 (1)1.1 课程设计目的 (1)1.2 课程设计的实验环境 (1)1.3 课程设计的预备知识 (1)1.4 课程设计要求 (1)第2章课程设计内容 (2)2.1系统功能 (2)2.2系统设计 (2)2.3 系统实现 (5)2.4程序的运行和测试 (8)第3章课程设计总结 (12)参考资料 (13)第1章课程设计的目的与要求1.1 课程设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《C#网络程序开发案例》课程后进行的一次全面的综合练习。
本课程设计的目的和任务:1. 巩固和加深学生对C#语言课程的基本知识的理解和掌握2. 掌握C#语言编程和程序调试的基本技能3. 利用C#语言进行基本的网络软件设计4. 掌握书写程序设计说明文档的能力5. 提高运用C#语言解决实际问题的能力1.2 课程设计的实验环境硬件要求能运行Windows 2000/XP操作系统的微机系统。
C#语言程序设计及相应的开发环境。
1.3 课程设计的预备知识熟悉C#语言及.NET开发工具。
1.4 课程设计要求1. 分析课程设计题目的要求2. 写出详细设计说明3. 编写程序代码,调试程序使其能正确运行4. 设计完成的软件要便于操作和使用5. 设计完成后提交课程设计报告第2章课程设计内容2.1系统功能在开发邮件客户端前,首先需要定义程序的功能。
根据实际需要,邮件客户端主要的功能应该有:主界面,账户管理,账户属性设置,新建邮件,发送邮件/接收邮件、接收和发送进度显示等。
在服务、容量和功能等方面都有很大的进步,特别是在邮箱的附件功能方面。
这些附件功能主要包括Flash贺卡、垃圾邮件过滤、邮件提醒、邮件查毒、信息定制、相册功能、下载手机铃声等。
这些功能从多方面满足了用户的需求,相信这些附加功能也将是服务商吸引用户的必争之地,也预示着我国的邮件服务市场将朝着大容量、多功能的方向发展。
一.简单Web Server实现1.引言1.1实验目的通过本实验,熟悉Web Server的安装和配置过程,进一步理解其工作原理。
1.2 介绍WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。
WWW 是Internet 的多媒体信息查询工具,是Internet 上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。
正是因为有了WWW工具,才使得近年来Internet 迅速发展,且用户数量飞速增长。
2.任务概述2.1实验目标实现一个Web Server的基本功能,用户通过Chrome等浏览器向服务器端发出网页请求,服务器端接到请求,向用户返回用户所需的网页。
同时通信记录在服务器端记录现实。
2.2运行环境需求Win7,cmd。
3.工作原理http协议使Web服务器和浏览器可以通过Web交换数据。
它是一种请求/响应协议,即服务器等待并响应客户方请求。
H T T P不维护与客户方的连接,它使用可靠的T C P连接。
客户/服务器传输过程可分为四个基一步骤:1 浏览器与服务器建立连接;2 浏览器向服务器请求文档;3 服务器响应浏览器请求;4 断开连接。
4. 程序演示1、运行程序WebServer.java图1:运行WebServer.java效果2、访问服务器URL:http://localhost:8080/图2:访问服务器URL:http://localhost:8080/效果3、服务器端:图3:用户访问之后服务器端效果5. 程序代码://WebServer.java WebServer是服务器主线程类import java.io.File;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import .InetAddress;import .ServerSocket;import .Socket;public class WebServer {//设置静态资源的目录public static final String WEB_ROOT=System.getProperty("user.dir")+File.separator;//设置关闭命令private static final String SHUTDOWN_COMMAND="/SHUTDOWN";private boolean shutdown=false;public static void main(String[] args) {WebServer server=new WebServer();server.await();}public void await() {ServerSocket serverSocket=null;//监听8080端口int port=8080;try {serverSocket=new ServerSocket(port, 1, InetAddress.getByName("127.0.0.1"));} catch (IOException e) {e.printStackTrace();System.exit(1);}//循环等待客户端连接while (!shutdown) {Socket socket=null;InputStream inputStream=null;OutputStream outputStream=null;System.out.println("Web Server is listening on port "+serverSocket.getLocalPort());try {socket=serverSocket.accept();//当有客户端连接时inputStream=socket.getInputStream();//获取请求字符流outputStream=socket.getOutputStream();//输出流//处理客户端请求---RequestRequest request=new Request(inputStream);request.parse();//向客户端发送ResponseResponse response=new Response(outputStream);response.setRequest(request);response.sendStaticResource();//关闭socketsocket.close();//检查如果是shutdown命令,关闭服务器shutdown=request.getUri().equals(SHUTDOWN_COMMAND);} catch (Exception e) {e.printStackTrace();continue;}}}}//Request.java 响应HTTP协议中的Requestimport java.io.IOException;import java.io.InputStream;public class Request {private InputStream inputStream;private String uri;public String getUri() {return uri;}public void setUri(String uri) {this.uri = uri;}public Request(InputStream inputStream) {this.inputStream=inputStream;}public void parse() {//从socket读取字符StringBuffer request=new StringBuffer(2048);int i;byte[] buffer=new byte[2048];try {i=inputStream.read(buffer);} catch (IOException e) {e.printStackTrace();i=-1;}for (int j = 0; j < i; j++) {request.append((char)buffer[j]);}System.out.println(request.toString());uri=parseUri(request.toString());}/*** 从客户端请求字符串中截取请求资源uri* @param requeString 请求字符串,包括请求头、请求方法、请求资源的uri * @return 请求资源的uri*/private String parseUri(String requeString){int index1,index2;//比如GET /index.html HTTP/1.1//请求方法、请求资源、版本之间以空格隔开index1=requeString.indexOf(' ');if (index1!=-1) {index2=requeString.indexOf(' ', index1+1);if (index2>index1) {return requeString.substring(index1+1, index2);}}return null;}}//Response.java 响应HTTP协议中的Responseimport java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.OutputStream;public class Response {private static final int BUFFER_SIZE=1024;Request request;OutputStream outputStream;public Response(OutputStream outputStream) {this.outputStream=outputStream;}public void setRequest(Request request) {this.request=request;}//发送静态资源public void sendStaticResource() throws IOException {byte[] bytes=new byte[BUFFER_SIZE];FileInputStream fis=null;try {File file=new File(WebServer.WEB_ROOT, request.getUri()); if (file.exists()) {//如果请求的静态资源文件存在fis=new FileInputStream(file);int ch=fis.read(bytes, 0, BUFFER_SIZE);while (ch!=-1) {outputStream.write(bytes, 0, ch);ch=fis.read(bytes, 0, BUFFER_SIZE);}}else {//如果静态资源不存在String errorMessage="HTTP/1.1 404 File Not Found\r\n"+ "Content-Type:test/html\r\n"+"Content-Length:23\r\n"+"\r\n"+"<h1>File Not Found</h1>";outputStream.write(errorMessage.getBytes());}} catch (Exception e) {System.out.println(e.toString());}finally{if (fis!=null) {fis.close();}}}}6. 实验心得:通过本次实验,我锻炼了自己的上机操作能力,并对理论知识有了进一步的理解,了解并掌握了简单WebServer的安装与配置过程,并对客户服务器模式的内部运行有了进一步的理解。
Web编程的电子邮件系统及邮件服务设计毕业论文绪论1.1课题背景电子邮件是介于书信、电话和传真之间的电子信息传送方式,它也是互联网上最基本的功能之一。
随着互联网的进一步发展,电子邮件已经成为人们联系沟通的重要手段。
技术的革新使得电子邮件系统已经演变成一个相当复杂且功能更为丰富的系统,可以传送声音、图片、图像、文档等多媒体信息,以至于数据库或帐目报告等更加专业化的文件都可以以电子邮件的形式在网上分发。
随着信息技术的发展以及电子邮件系统功能的日益强大,其应用领域已得到较大的拓展。
基于Web的Web mail系统应用是这些年发展起来的,网络的普及使得它得以广泛的应用。
采用开放的Web邮件服务不仅为用户省去了维护与升级客户端软件的麻烦,而且也能够充分发挥系统软硬件资源的作用。
Web邮件服务的另一个优势是允许用户,甚至是持有移动设备的用户,可以随时、随地的访问系统并进行信息传递。
1.2论文的研究内容在现有的基于WINDOWS平台的Send mail邮件服务器上来架构和实现Web mail是本文主要研究的问题。
结合目前主流的B/S网络应用模式以及教研室邮件服务器的扩展需求,本文主要研究了基于C/S模式邮件服务器的开放式Web邮件服务器集成方案及相关技术。
随着新技术的不断涌现,电子邮件产品越来越多,而且也越来越丰富。
在邮件服务器端有Microsoft Exchange 服务器、Qmail服务器、FTPMail服务器等等。
这些服务器都有相应的操作系统支持,而且有的又有很好的跨平台性,像Send mail服务器它在Linux、Unix、FreeBSD都可用。
在邮件系统客户端,其中Microsoft Outlook、Netscape Mail、Fox mail是当今电子邮件客户端软件的主流产品;另外,随着网络的普及,基于Web的应用模式的发展与应用,诸如sina、263以及众多的企业都已推出了自己的Web邮件系统。
题目电子邮件系统电子邮件系统摘要描述internet迅速发展,电子邮件已经成为信息交换的主要载体,电子邮件成为目前互联网上流行,方便快捷的通讯工具,随着网络发展普及,电子邮件的应用更加广泛。
本文提出一款适合大众用户的电子邮件系统,该电子邮件系统的主要功能模块包括登陆模块,收发模块和通讯录模块等。
首先概括性的介绍电子邮件系统软件的发展趋势及其电子邮件收发系统应用到相关知识,SMTP协议,POP协议等基本概念以及JSP概述。
从JSP技术分析着手,分析利用JSP技术对本系统设计开发的过程。
描述电子邮件收发系统的开发环境和编程语言然后对电子邮件系统进行总体设计。
再分别对各功能模块进行详细的分析设计,最后使用用例对系统进行测试。
关键词:电子邮件,SMTP,POP3, JSPEmail systemAbstractDescription the internet rapid development, The email already became the exchange of information the main carrier. The E-mail is most convenient, most swift communication tool on Internet at present, with the popularization of the network its application will be more extensive.This article proposed section electronic mail system which is suited to the populace users. The main function module of mail system including the module of users landing, the module of receiving and dispatching mail, the module of address book and so on.First concise quality introduction electronic mail system software development and its email receiving and dispatching system application related knowledge SMTP POP basic concept and JSP summarize. The article will analysis from the JSP technology, dissect the process of design development of this system using JSP technology. The description email receiving and dispatching system development environment and the programming language then carries on the system design to the electronic mail system. Then separately carries on the detailed analysis design to the function module, finally uses with the example carries on the test for the system. Keyword:Email ,Simple Mail Transfer Protocol , Post Office Protocol 3.目录摘要.......................................................... I I ABSTRACT........................................................... I I 第一章绪论. (1)1.1引言 (1)1.2国内外研究现状及发展趋势 (1)1.3课题的主要研究内容 (2)第二章系统需求及可行性分析 (3)2.1系统的初步调查 (3)2.1.1 系统调查方法 (3)2.2系统设计目标 (3)2.3系统可行性分析 (3)2.4基本技术介绍 (4)2.4.1 POP3协议中文版-RFC1939简介 (4)2.4.2 POP3协议简介 (4)2.4.3 SMTP协议简介 (4)2.4.4 JSP技术概述 (4)2.4.5 JSP工作原理 (5)2.4.6 SQL Server2000 (5)第三章系统总体分析 (6)3.1系统总体结构 (6)3.2系统总体分析 (6)3.3系统功能模块分析 (8)第四章系统设计 (9)4.1电子邮件收发系统的开发环境 (9)4.2数据库设计 (9)4.3各主要功能模块设计 (9)4.4各数据表设计 (10)第五章系统代码设计 (12)5.1各个模块的详细设计 (12)第六章系统测试方案 (20)6.1测试方案和测试结果 (20)第七章总结和展望 (23)7.1总结 (23)7.2系统今后的发展方向 (23)致谢 (24)参考文献: (25)附件一 (26)英文原文 (26)中文译文 (31)第一章绪论1.1引言因特网的诞生成为当今世界上最大的网络使人们信息交流不再受那么多的限制,电子邮件是internet服务的重要部分。
四川师范大学成都学院高级语言程序课程设计邮件客户端的设计与实现学生姓名学号所在学院通信工程学院专业名称通信工程班级2014级1班指导教师成绩四川师范大学成都学院二○一六年十二月课程设计任务书邮件客户端的设计与实现内容摘要:随着互联网技术及网络办公化的发展,电子邮件成为人们主要的通信方式之一。
越来越多的人开始使用它。
而且用它的人数势必会继续增加。
虽然,现在已经有很多的邮件收发软件例如著名的FoxMail ,但是对于大多数的非专业的人来说它还是有点难度。
因此,我们所设计的基于JavaMail的邮件收发系统就利用JavaMail开发包的高级应用和E-Mail的相关协议开发出这个功能相对简单,但是实用、方便、快捷的邮件收发系统。
主要用于帮助用户将邮件发送给SMTP服务器和从POP3邮件服务器读取用户的电子邮件。
它集邮件的撰写、发送并且支持附件的发送功能。
虽然它没有FoxMail那么强大的功能,但是它容易掌握和使用。
整个系统功能流畅,从操作简便、界面友好、灵活实用的要求出发,使用户之间的交流能够更加地方便和快捷。
本人结合SMTP以及POP3协议的实现原理、相关JavaMail API帮助文档以及相关参考书,实现了一个工作在PC下的邮箱客户端程序,该程序基本上实现了一个邮箱所对应的所有功能。
关键词:客户端 JavaMAil SMTP协议Design And Implementation Of Mail Client Abstract:With the development of Internet technology and network office, e-mail has become one of the main modes of communication.And the number of people using it is bound to continue to increase.Although there are a lot of E-mail software such as the famous FoxMail, but for most non professional people it is still a little difficult.Therefore, the JavaMail mail system on the use of advanced applications and E-Mail JavaMail development package related agreements to develop the relatively simple functions based on our design, but practical, convenient and fast mail system. Mainly used to help users send mail to the SMTP server and read the user's e-mail from the POP3 mail server. It sets the mail to write, send and support attachments send function. Although it does not have FoxMail so powerful features, but it is easy to grasp and use. The whole system functions smoothly, from simple operation, friendly interface, flexible and practical requirements, so that the communication between users can be more convenient and convenient.So I combined the SMTP and POP3 protocol principle, JavaMail API help documentation and reference books, can work under the PC mail client program, the program basically realized all the functions corresponding to a mailbox.Keywords:Client JavaMAil Simple Message Transfer Protocol目录前言 (VI)1 设计概述 (VI)1 邮件发送协议与技术 (VI)2.1 SMTP协议简介及通讯模型 (VI)2.2 Java Mail API介绍 (VII)3 邮件发送客户端总体设计 (IX)3.1 系统模块设置 (IX)3.2 类的功能设计 (IX)4 功能模块的实现 (XI)4.1 文本的发送功能实现 (XI)4.2 主界面的实现 (XIII)4.3 附件发送功能实现 (XV)5 程序测试 (XVI)5.1 登录账号 (XVI)5.2 发送文本邮件以及附件 (XVI)6 设计小结 (XVII)附录 (XIX)附录1:LoginDialog类部分代码 (XIX)附录2:MailSender类部分代码 (XIX)附录3:客户端样式 (XXI)参考文献 (XXII)邮件客户端的设计与实现前言电子邮件(electronic mail,简称 E-mail,标志:@,也被大家昵称为“伊妹儿”)又称电子信箱、电子邮政,它是—种用电子手段提供信息交换的通信方式。
电子邮件客户端程序设计与实现实验报告
本次实验中,我编写一个电子邮件客户端程序,可用于发送和接收电子邮件。
该客户端程序可以支持 Simple Mail Transfer Protocol(SMTP)协议和Post Office Protocol (POP)协议,并可以连接到互联网上的邮件服务器。
首先,我采用经典的TCP/IP Socket通信库和该语言支持的SMTP/POP客户端函数,其中用于通过SMTP/POP客户端发送和接收邮件信息的核心功能函数有:协议调用,信息发送接收,文本处理和回复处理,以及异常处理等。
接着,我采用系统调用和网络函数的方式与服务器建立起连接,查找用户邮箱,读取邮件信息,发送邮件等。
最后,我利用用户界面和相应的事件处理机制,使用户能够较便捷的发送和接收邮件。
实验结果显示,编写的客户端程序可以较为便捷地连接到互联网上的邮件服务器,无论是发送邮件还是接收邮件都能较轻松地实现;并支持相应的错误处理和超时机制,使得整个电子邮件通信机制更加健全安全。
总之,本实验中,我编写了一个邮件客户端程序,可以支持SMTP/POP协议,可以连接互联网上的邮件服务器,实现电子邮件的发送和接收,该程序的执行结果也得到了较为理想的效果。
手机邮件客户端发送系统的策划和应用研究论文摘要随着移动互联网的快速发展,手机已经成为了我们日常生活中不可或缺的一部分。
使用手机发送邮件也成为了越来越多人的习惯。
因此,建立一款方便实用的手机邮件客户端发送系统具有很大的实际意义和商业价值。
本文以手机邮件客户端发送系统为研究对象,提出了基于SMTP/POP3协议的邮件发送系统设计方案,分别从系统功能模块化设计、系统界面设计、系统维护与安全策略设计等方面进行探讨,并简要介绍了该系统在实际应用中的效果和意义。
引言随着手机应用市场的不断扩大和互联网技术的不断发展,在手机上应用开发的研究和实践也愈发重要,特别是对于邮箱这样的传统服务而言。
邮件一直是人们进行工作和日常生活中重要信息交流的方式之一。
而随着智能手机的普及,手机也成为了人们使用邮件的新途径。
通过手机发送邮件是一项便捷有效的方式,这也促进了我们探索如何建立一款实用的手机邮件客户端发送系统的方法和策略的研究。
问题描述如果想要使用手机发送邮件,通常需要下载并使用一款邮件客户端,但是,许多人使用手机邮箱会遇到这样的问题:发出去的邮件无法收到或者被退回,或者邮件过程中出现某些错误。
这些问题在传统邮箱客户端中也存在,但是在手机应用中可能更加频繁发生。
这些问题的主要原因在于手机邮件客户端发送系统的设计不合理,或者使用过程中存在安全隐患。
因此,为了提高邮件的发送成功率和用户的使用体验,需要研究手机邮件客户端发送系统的设计和实现方法。
解决方案在本文中,我们提出一款基于SMTP/POP3协议的邮件发送系统。
该系统可以帮助用户快速方便地在手机上发送邮件,其具备的优点包括:响应快、灵活方便、安全保障等。
下面我们将详细介绍该系统的设计和实现方法。
系统功能模块化设计系统的设计需要考虑到用户的需求和使用习惯,以及后台工作人员的管理需求。
我们将系统划分为五个模块:1.用户注册模块:用户可以注册账户并自主选择邮箱账号和密码。
2.用户登录模块:用户可以通过邮箱账号和密码登录系统,进入系统主页。
XXXXXXXX 2011 届毕业设计说明书Java邮件服务系统系、部:XXXXXXXXXXXX 学生姓名:XXX指导教师:XXX 职称XXXX 专业:XXXXXXXXXX班级:XXXXXX完成时间:2011-02-15摘要本文讲述了一个基于Web技术的邮件平台的开发过程。
着重从服务器平台安装配置和用户界面的开发方面详细阐述了整个邮件平台开发的全过程。
对开发过程中的难点进行了分析和研究,并通过系统结构图,功能模块图,配置文件,数据字典等方式形象地描述出来。
基于Web技术的邮件服务平台的开发主要包括服务器的安装配置,用户信息数据库的建立,用户访问界面程序的开发三个方面。
对于服务器需要稳定性好、安全可靠,负载能力强,对于数据库需要安全可靠、数据完整性强。
而对于用户界面应该具有能全面、友好易用等特点。
经过分析,我使用Tomcat作为Web服务器,使用邮件服务商作为DNS和邮件服务器,使用Mysql作为后台数据库,使用JSP、Java、HTML为用户界面开发工具,使用Java Mail API为邮件处理程序的应用接口。
并采用了目前流行的Java Servlet技术,保证了用户界面程序良好的可扩展性和可维护性。
关键词:Web技术,邮件服务平台,服务器,数据库,Java Servlet技术,Java Mail APIAbstractThis text related a development of a mail serve platform that base on the Web technique. Text elaborated the whole process that mail platform develop, emphasize from the installation and setup of server and development of the custom interface. We have analyzed and studied for the difficulties of development, then described these vividly through the tools of the System Structure, Function Module, Configuration Files, Data Dictionary,etcThe development of Mail Serve Platform That Base On Web Technique mainly includes the three aspects of the installation and setup of the server, the consumer information database creates and the custom interface program development. We need a stability good safety and capability strong server, we need a safety and complete database, we need a friendly and use easily custom interface.As a result of analysis, I use Windows XP of Microsoft Corporation as the Web server, select Red Hat Linux 9 as the DNS and Mail server, use JSP, Java, HTML as development language, use Java Mail API as mail processing interface, and adopt Java Servlet Technique to guaranteed extensibility and ability of supportable.Key words:Web technique, mail serve platform, server,database, Java Servlet Technique, Java Mail API目录摘要 (1)目录 (4)引言 (6)第一章电子邮件系统概述 (7)1.1、电子邮件系统发展简史 (7)1.2、电子邮件系统的作用 (8)1.3、电子邮件系统发展的现状及存在的问题 (9)第二章电子邮件系统分析 (10)2.1 电子邮件系统的需求分析 (10)2.2 电子邮件系统的基本结构 (11)2.3 构建邮件系统的准备工作 (12)2.3.1、操作系统和服务器软件的选择 (12)2.3.2、编程语言和编程环境的选择 (12)2.3.3、服务器软件的选择 (13)第三章系统的总体规划 (14)3.1系统平台的规划 (14)3.2 、邮件系统主要功能的设计 (15)3.3 登录、身份认证 (16)3.4 邮件的收发 (16)3.5 查看邮件 (17)3.6 通讯录管理 (17)第四章系统的实现 (17)4.1 JDK环境的安装配置 (18)4.2 Web服务器的安装配置 (19)4.3 数据库的设计 (24)4.4 用户登录界面的设计 (25)4.5 用户注册界面的设计 (26)4.6 邮件列表界面 (27)4.7邮件编辑界面 (27)4.8 邮件读取界面 (28)4.9 通讯录的处理 (29)4.10 其他页面 (31)第五章结论和体会 (33)致谢 (34)参考文献 (35)引言我的毕业设计的题目是《基于Web技术的邮件服务平台》,秉着尽可能的将大学四年所学的所有知识融会贯通,全部展现出来让学校验收的原则我自选了这个题目。
学海无涯苦作舟!南京理工大学毕业设计说明书(论文)作者: 学号:学院(系):计算机科学与技术专业: 网络工程题目: 电子邮件客户端的设计与实现学海无涯苦作舟!毕业设计说明书(论文)中文摘要毕业设计说明书(论文)外文摘要1 引言 (3)1.1电子邮件介绍 (3)1.2电子邮件的工作原理 (4)1.3电子邮件技术现状 (4)1.3.1 端到端的安全电子邮件技术 (4)1.3.2 传输层的安全电子邮件技术 (5)1.4 开发环境及运行环境 (6)2 应用系统开发理论基础 (6)2.1 SMTP介绍 (6)2.1.1 SMTP的工作原理及其模型 (8)2.1.2 SMTP协议的命令和应答 (9)2.2 POP3协议 (12)2.2.1 POP3协议简介 (12)2.2.2 POP3协议简介 (12)2.3 jmail组建简介及其特点 (13)2.3.1 jmail组建简介 (13)2.3.2 Jmail的特点 (13)2.4 MFC简介 (13)2.4.1 MFC概述 (13)2.4.2 MFC中对话框类型 (14)3 邮件客户端总体设计 (14)3.1 系统总框架 (15)3.2程序功能图 (15)4 邮件客户端详细设计及实现 (16)4.1 数据库模块的的设计与实现 (16)4.1.1数据库表的设计 (16)4.1.2 关键数据库操作功能代码 (18)4.2 邮件发送模块的的设计与实现 (20)4.2.1类和界面的设计 (20)4.2.2关键代码 (20)4.3 收件箱的设计与实现 (22)4.3.1 类的设计以及组建导入 (22)4.3.2关键代码 (24)4.4 发件箱、草稿箱、已发送信箱的设计与实现 (28)4.4.1类和界面的设计 (28)4.4.2关键代码 (30)4.5 联系人模块的设计与实现 (31)4.5.1 类和界面的设计 (31)4.5.2关键代码 (32)4.6 用户模块的设计与实现 (33)4.6.1 类和界面的设计 (33)4.6.2 关键代码 (34)4.7其它关键代码 (35)4.7.1 窗口创建函数 (35)4.7.2 窗口销毁函数 (37)5 结论 (38)6 致谢 (39)7 参考文献 (40)1引言21世纪是网络飞速发展的时代,电子邮件已经成为热门话题。
随着网络技术的不断发展,网络应用已经渗透到人类社会的各个角落。
作为网络世界信息传输的支撑点的电子邮件,更是人们关注的焦点。
通过电子邮件无论朋友在何方,都可以通过电子邮件方便的联系交流,电子邮件开辟网络世界里的一片天地。
电脑的日益普及,大大改变了各行各业的工作方式和人们的生活方式,越来越多的人开始进入到电脑的世界。
电脑的普及化,进而促进了互联网的进一步的发展和完善,而作为互联网上基本的存在电子邮件系统给予了上网的电脑用户另一个别样的空间。
1.1电子邮件介绍电子邮件(简称E-mai1)又称电子信箱、电子邮政,它是—种用电子手段提供信息交换的通信方式。
它是全球多种网络上使用最普遍的一项服务。
这种非交互式的通信,加速了信息的交流及数据传送,它是—个简易、快速的方法。
通过连接全世界的Internet,实现各类信号的传送、接收、存贮等处理,将邮件送到世界的各个角落。
到目前为止,可以说电子邮件是Internet资源使用最多的一种服务,E-mai1不只局限于信件的传递,还可用来传递文件、声音及图形、图像等不同类型的信息。
电子邮件不是一种“终端到终端”的服务,是被称为“存贮转发式”服务。
这正是电子信箱系统的核心,利用存贮转发可进行非实时通信,属异步通信方式。
即信件发送者可随时随地发送邮件,不要求接收者同时在场,即使对方现在不在,仍可将邮件立刻送到对方的信箱内,且存储在对方的电子邮箱中。
接收者可在他认为方便的时候读取信件,不受时空限制。
在这里,“发送”邮件意味着将邮件放到收件人的信箱中,而“接收”邮件则意味着从自己的信箱中读取信件,信箱实际上是由文件管理系统支持的—个实体。
因为电子邮件是通过邮件服务器(mai1 server)来传递档的。
通常mail server是执行多任务操作系统UNIX的计算机,它提供24小时的电子邮件服务,用户只要向 mail server管理人员申请—个信箱账号,就可使用这项快速的邮件服务。
1.2电子邮件的工作原理1) 电子邮件系统是一种新型的信息系统,是通信技术和计算机技术结合的产物。
电子邮件的传输是通过电子邮件简单传输协议(Simple Mail Transfer Protocol,简称SMTP)这一系统软件来完成的,它是Internet下的一种电子邮件通信协议。
2) 电子邮件的基本原理,是在通信网上设立“电子信箱系统”,它实际上是一个计算机系统。
系统的硬件是一个高性能、大容量的计算机。
硬盘作为信箱的存储介质,在硬盘上为用户分一定的存储空间作为用户的“信箱”,每位用户都有属于自己的—个电子信箱。
并确定—个用户名和用户可以自己随意修改的口令。
存储空间包含存放所收信件、编辑信件以及信件存盘三部分空间,用户使用口令开启自己的信箱,并进行发信、读信、编辑、转发、存档等各种操作。
系统功能主要由软件实现。
3) 电子邮件的通信是在信箱之间进行的。
用户首先开启自己的信箱,然后通过键入命令的方式将需要发送的邮件发到对方的信箱中。
邮件在信箱之间进行传递和交换,也可以与另—个邮件系统进行传递和交换。
收方在取信时,使用特定账号从信箱提取。
1.3电子邮件技术现状随着网络的进一步发展,电子邮件已经成为人们联系沟通的重要手段,而电子邮件的安全问题也越来越得到使用者的重视。
对此,惠普公司及时提出了安全电子邮件的全面解决方案。
1.3.1 端到端的安全电子邮件技术端到端的安全电子邮件技术,保证邮件从被发出到被接收的整个过程中,内容保密,无法修改,并且不可否认(privacy,integrity,non-repudation)。
目前的Internet上,有两套成型的端到端安全电子邮件标准:PGP和S/MIME。
PGP是Pretty Good Privacy的简称,是一种长期一直在学术圈和技术圈内得到广泛使用的安全邮件标准。
其特点是通过单向散列算法对邮件内容进行签名,以保证信件内容无法修改,使用公钥和私钥技术保证邮件内容保密且不可否认。
发信人与收信人的公钥都分布在公开的地方,如FTP站点,而公钥本身的权威性(这把公钥是否代表发信人?)则可以由第三方、特别是收信人所熟悉或信任的第三方进行签名认证,没有统一的集中的机构进行公钥/私钥的签发。
即在PGP系统中,信任是双方之间的直接关系,或是通过第三者、第四者的间接关系,但任意两方之间都是对等的,整个信任关系构成网状结构,这就是所谓的WEB of Trust。
最近,基于PGP的模式又发展出了另一种类似的安全电子邮件标准,称为GPG,Gnu Privacy Guard。
S/MIME是Secure Multi-Part Intermail Mail Extension的简称。
它是从PEM (Privacy Enhanced Mail)和MIME(Internet邮件的附件标准)发展而来的。
同PGP一样,S/MIME也利用单向散列算法和公钥与私钥的加密体系。
与PGP不同的主要有两点:首先,它的认证机制依赖于层次结构的证书认证机构,所有下一级的组织和个人的证书由上一级的组织负责认证,而最上一级的组织(根证书)之间相互认证,整个信任关系基本是树状的,这就是所谓的Tree of Trust。
其次,S/MIME将信件内容加密签名后作为特殊的附件传送。
S/MIME的证书格式也采用X.509,但与一般浏览器网上购物使用的SSL证书还有一定差异,支持的厂商相对少一些。
在国外,Verisign免费向个人提供S/MIME电子邮件证书;在国内也有公司提供支持该标准的产品。
而在客户端,Netscape Messenger 和Microsoft Outlook都支持S/MIME。
1.3.2 传输层的安全电子邮件技术传统的邮件包括信封和信本身;电子邮件则包括信头和信体。
现存的端到端安全电子邮件技术一般只对信体进行加密和签名,而信头则由于邮件传输中寻址和路由的需要,必须保证原封不动。
然而,一些应用环境下,可能会要求信头在传输过程中也能保密,这就需要传输层的技术作为后盾。
目前主要有两种方式实现电子邮件在传输过程中的安全,一种是利用SSL SMTP和SSL POP,另一种是利用VPN或者其他的IP通道技术,将所有的TCP/IP传输封装起来,当然也就包括了电子邮件。
SMTP,即Simle Mail Transfer Protocol,简单邮件传输协议,是发信的协议标准;POP,即Post Office Protocol,邮箱协议,是收信的协议。
SSL SMTP 和SSL POP即在SSL所建立的安全传输通道上运行SMTP和POP协议,同时又对这两种协议作了一定的扩展,以更好地支持加密的认证和传输。
这种模式要求客户端的EMAIL软件和服务器端的EMAIL服务器都支持,而且都必须安装SSL证书。
基于VPN和其他IP通道技术,封装所有的TCP/IP服务,也是实现安全电子邮件传输的一种方法。
这种模式往往是整体网络安全机制的一部分。
1.4 开发环境及运行环境1.4.1开发环境Microsoft Windows XP ProfessionalVisual C++ 6.0、Microsoft Access20071.4.2 运行环境Intel Pentium 2及以上处理器,32M以上内存,4G以上硬盘Microsoft Windows 9X/NT操作系统800*600或以上的屏幕分辨率2 应用系统开发理论基础本章介绍了这次设计所需要用到的各种软件,包括Tomcat、JDK、JavaMail API等工具,也介绍了邮件客户端需要的SMTP和POP3协议等。
2.1 SMTP介绍SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,是一种提供可靠且有效电子邮件传输的协议。
SMTP是建立在FTP文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供与来信有关的通知。
SMTP目前已是事实上的在Internet传输E-Mail的标准,是一个相对简单的基于文本的协议。
在其之上指定了一条消息的一个或多个接收者(在大多数情况下被确定是存在的),然后消息文本就传输了。
可以很简单地通过Telnet程序来测试一个SMTP服务器,SMTP使用TCP端口25。
要为一个给定的域名决定一个SMTP服务器,需要使用MX(Mail eXchange)DNS。
在20世纪80年代早期SMTP开始被广泛地使用。