已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,基于JAVA的电子邮件系统,姓名:孔康华班级:计师081指导老师:严燕,总体内容,1.研究背景2.开发系统基本知识3.基本功能4.进度计划,研究背景,电子邮件作为Internet最为广泛的应用之一,在人们的工作和生活中扮演着重要的角色,应用的普及使电子邮件技术有了飞速的发展。网络电子邮件系统在当今的互联网上比比皆是,不管是windows上的普及,还linux上的稳定可靠和低廉;不管是分布式系统,还是基于P2P,都离不开邮件系统的基本原理。在Internet上将一段文本信息从一台计算机传送到另一台计算机上,可通过两种协议来完成,即SMTP(SimpleMailTransferProtocol,简单邮件传输协议)和POP3(PostOfficeProtocol,邮局协议3)。SMTP是Internet协议集中的邮件标准。在Internet上能够接收电子邮件的服务器都有SMTP。电子邮件在发送前,发件方的SMTP服务器与接收方的SMTP服务器联系,确认接收方准备好了,则开始邮件传递;若没有准备好,发送服务器便会等待,并在一段时间后继续与接收方邮件服务器联系。,研究背景,这种方式在Internet上称为“存储转发”方式。POP3可允许E-mail客户向某一SMTP服务器发送电子邮件,另外,也可以接收来自SMTP服务器的电子邮件。换句话说,电子邮件在客户PC机与服务提供商之间的传递是通过P0P3来完成的,而电子邮件在Internet上的传递则是通过SMTP来实现。,常见协议,SMTP(SimpleMailTransferProtocol):SMTP主要负责底层的邮件系统如何将邮件从一台机器传至另外一台机器。POP(PostOfficeProtocol):目前的版本为POP3,POP3是把邮件从电子邮箱中传输到本地计算机的协议。IMAP(InternetMessageAccessProtocol):目前的版本为IMAP4,是POP3的一种替代协议,提供了邮件检索和邮件处理的新功能,这样用户可以完全不必下载邮件正文就可以看到邮件的标题摘要,从邮件客户端软件就可以对服务器上的邮件和文件夹目录等进行操作。IMAP协议增强了电子邮件的灵活性,同时也减少了垃圾邮件对本地系统的直接危害,同时相对节省了用户察看电子邮件的时间。除此之外,IMAP协议可以记忆用户在脱机状态下对邮件的操作(例如移动邮件,删除邮件等)在下一次打开网络连接的时候会自动执行。,开发系统基本知识,JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于MicrosoftOutlook的应用程序。虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的java开发工具包中(JavaDevelopmentKit),这就意味着你在使用前必须另外下载JavaMail文件。除此以外,你还需要有Sun的JavaBeansActivationFramework(JAF)。JavaBeansActivationFramework的运行很复杂,在这里简单的说就是JavaMail的运行必须得依赖于它的支持。在Windows2000下使用需要指定这些文件的路径,在其它的操作系统上也类似。JavaMail是可选包,因此如果需要使用的话你需要首先从下载。目前最新版本是JavaMail1.4,使用JavaMail的时候需要JavabeanActivationFramework的支持,因此你也需要下载JAF。安装JavaMail只是需要把他们加入到CLASSPATH中去,如果你不想修改CLASSPATH的话,可以直接把他们的jar包直接copy到JAVA_HOME/lib/ext下。这样JavaMail就安装好了。JavaMail包中用于处理电子邮件的核心类是:Session,Message,Address,Authenticator,Transport,Store,Folder等。Session定义了一个基本的邮件会话,它需要从Properties中读取类似于邮件服务器,用户名和密码等信息。,开发系统基本知识,Javax.mail.Session:Session类定义了一个基本邮件会话(session),是JavaMailAPI最高层入口类。所有其它类都是经由这个session才得以生效。Session对象用Java.util.Properties对象获取信息,如邮件服务器、用户名、密码及整个应用程序中共享的其它信息。Javax.mail.Message:一旦获得Session对象,就可以继续创建要发送的消息。这由Message类来完成。因为Message是个抽象类,必需用一个子类,多数情况下为Jernet.MimeMessage。MimeMessage是个能理解MIME类型和头的电子邮件消息,正如不同RFC中所定义的。虽然在某些头部域非ASCII字符也能被译码,但Message头只能被限制为用US-ASCII字符。Javax.mail.Address:一旦您创建了Session和Message,并将内容填入消息后,就可以用Address确定信件地址了。和Message一样,Address也是个抽象类。您用的是Jernet.InternetAddress类。Javax.mail.Authenticator:与J类一样,JavaMailAPI也可以利用Authenticator通过用户名和密码访问受保护的资源。对于JavaMailAPI来说,这些资源就是邮件服务器。JavaMailAuthenticator在Javax.mail包中,而且它和J中同名的类Authenticator不同。两者并不共享同一个Authenticator,因为JavaMailAPI用于Java1.1,它没有J类别。,开发系统基本知识,要使用Authenticator,先创建一个抽象类的子类,并从getPasswordAuthentication()方法中返回PasswordAuthentication实例。创建完成后,您必需向session注册Authenticator。然后,在需要认证的时候,就会通知Authenticator。您可以弹出窗口,也可以从配置文件中(虽然没有加密是不安全的)读取用户名和密码,将它们作为PasswordAuthentication对象返回给调用程序。Javax.mail.Transport:消息发送的最后一部分是使用Transport类。这个类用协议指定的语言发送消息(通常是SMTP)。它是抽象类,它的工作方式与Session有些类似。仅调用静态send()方法,就能使用类的缺省版本:Transport.send(message);或者,读者也可以从针对自己的协议的会话中获得一个特定的实例,传递用户名和密码(如果不必要就不传),发送消息,然后关闭连接。Javax.mail.Store:Store类实现特定邮件协议上的读、写、监视、查找等操作。通过Javax.mail.Store类可以访问Javax.mail.Folder类。Javax.mail.Folder:Folder类用于分级组织邮件,并提供照Javax.mail.Message格式访
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025工业空气呼吸器维护保养要求及常见安全隐患对照表(可编辑)
- 同居解除协议书范本
- 地摊无偿使用协议书
- 备货风险协议书模板
- 2025年民法学考试题库及答案
- (2025年)新生儿护理皮肤试题及答案
- 2025年企业管理测试题及答案
- 2025制药行业研发创新投入方向分析及全球市场准入政策研究分析报告
- 2025制药行业市场供需态势分析及未来投资潜力评估研究
- 2025制药原料行业市场前景供需管理分析及投资收益逻辑性规划分析报告
- 2019电网通信网络运行班组标准化管理手册
- 垃圾池施工方案
- 年产1000吨山野菜加工生产线项目谋划书
- 儿内科神经肌肉系统疾病诊疗规范2023版
- (课本版)《报任安书》
- 自动喷漆线使用说明书
- GB/T 27551-2011金属材料焊缝破坏性试验断裂试验
- 黔江武陵山机场改扩建项目飞行区场道工程施工组织设计
- 全民健康体检(行业一类)课件
- 异议处理申请表
- (完整版)安全技术交底表格(范本)
评论
0/150
提交评论