- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
多媒体网络通信邮件接收与发送
实 验 报 告
学 院: 计算机与电子信息学院 班级名称: 学生姓名: 空白小龙 学 号: 指导教师: 时 间: 2011年1月
一、实验题目:
编写一个邮件客户端和邮件接收端,能够接收和发送邮件。
二、实验过程:
本次实验通过使用JavaMail以及Java的图形化界面来完成邮件接收与发送的功能。JavaMail是提供给开发者处理电子邮件相关的编程接口,它是Sun发布的用来处理Email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于Microsoft Outlook或者Foxmail的应用程序。虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的java开发工具包中(Java Development Kit),这就意味着你在使用前必须另外下载JavaMail文件。所以在此次实验中,我在项目中添加了activation.jar和mail.jar这两个jar包。JavaMail包中用于处理电子邮件的核心类是:Session,Message,Address,Authenticator,Transport,Store,Folder等。Session定义了一个基本的邮件会话,它需要从Properties中读取类似于邮件服务器,用户名和密码等信息。
下面简要介绍下我的设计思路与实现过程并简单地注释下代码。
我的项目构造如下图:
主要设计思想是登录验证?发送邮件或者接收邮件,通过校验用户输入的邮箱账号和密码来进行验证,输入不正确的话就弹出提示框给出错误提示并可继续重新输入,如果正确的话就进入发送邮件的界面,此时默认的发件人就是用户输入的账号,与此同时把用户在登录模块输入的密码也存起来,作为以后发送邮件和接收邮件的密码。
成功登录之后,即进入了发送邮件的界面中,发件人已经默认设置为用户登录时输入的账号了,其他的比如说:收件人、邮件主题、内容、附件均可由用户输入与选择,可支持多附件传输。发送邮件成功后会弹出对话框提示邮件已经成功发送。在发送邮件的界面上还有一个按钮是“收信”按钮,可切换到接收邮件界面。
进入接收邮件界面后,就默认接收第一封邮件了,在界面上分别显示了邮箱中一共有几封邮件;邮件的主题、发件人、发送邮件的时间、邮件内容、邮件附件(默认保存在C盘根目录中);并可通过“上一封”和“下一封”来查看其他邮件;在界面上还有一个“写信”按钮,用于切换到发送邮件界面。大概的功能设计就是这样了。
为了更好的体现面向对象的设计思想,我把邮件抽象成了一个Mail类(mail包),在接收和发送邮件的工程中很好的使用到了这个类,Mail类(自定义的邮件类发送者邮箱用户名userName发送者邮箱密码password发送邮件服务器hostName发送邮件服务器端口port邮件接收者toAddress邮件主题subject邮件内容content邮件发送者fromAddress附件路径列表fileList附件保存路径attachPath邮件发送时间time邮件数量numberCheck类(check包)用于检测邮箱账号和密码是否正确ecive包中的ReciveMyMail类为接收邮件类send包中的SendMyMail类为发送邮件类MyAuthenticator类继承了Authenticator类记录用户名和密码ui包中包含三个图形化界面的类,分别为:Login类(邮件登录界面SeadMail类(邮件发送界面ReciveMail类(邮件接收界面ail包中的Mail.java
package mail;
(import略)
/**
* 自定义的邮件类
*
* @author 空白小龙
* @version 1.0.0,2010-10-28
*/
public class Mail {
// 发送者邮箱用户名
public static String userName;
// 发送者邮箱密码
public static String password;
// 发送邮件服务器
private String hostName;
// 发送邮件服务器端口
private int port;
// 邮件接收者
private String toAddress;
// 邮件主题
private String subject;
// 邮件内容
private String content;
// 邮件发送者
private String fromAddress;
// 附件路径列表
private ListString fileList = new ArrayListStri
文档评论(0)