课程实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
import
import
import
import
import
import
import;
import;
import
import.*;
import.*;
import.*;
import
2)定义SendFrame类的内容
首先定义类包含的数据结构,名称和用途如表中所示:
privateJTextFieldtxt_to;
;
dd(table_1, ;
JPanel contentPane;
ndexOf("hahahamail"+(i+1));
ndexOf("endhahamail"+(i+1));
current=submaillist[i+1];
int x=("Subject: ")+"Subject: ".length();
支持邮件发送时添加附件。
支持抄写和密送功能。
支持邮件的回复/转发功能。
具备完成所需功能的基本图形用户界面(GUI),并具友好性。
说明:额外功能的实现,将视具体情况予以一定加分。
对应检查表确定需要编写代码的模块
序号
检查内容
基本内容
1
具备GUI界面
界面:包括登录界面、收件夹、写信等
2
具有基本的邮件编辑器,可以撰写邮件
1)在第一项实验的最终配置结果上进行VLAN划分
pusernameadd=sn_username;
ppasswd=sn_passwd;
psn_s_smtp=sn_s_smtp;
pusername1=usernamer1;
;
(textArea);
setVisible(true);
}
4)完成寄信操作的函数SendAction
使用了《计算机网络实验SOCKET编程指导手册》中的代码,收件人、内容、被当作参数传如,并赋值SendAction中的变量to、mailConstent
3)定义SendFrame类的构造函数SendFrame
在这个函数中,主要将界面架构起来,邮件的发送并不是在这个函数中完成的。当Send按钮被单击后,消息被函数接收到,此时通过调用SendAction函数完成邮件的发送。
publicSendFrame(finalString sn_username,finalString sn_passwd,finalString sn_s_smtp,finalString usernamer1) {
提交实验设计报告
基于自己的实验设计报告,通过实验课的上机实验,演示给实验指导老师检查
实验内容
实验
1)使用仿真软件描述网络拓扑图
2)按如下要求进行IP地址规划
将PC1、PC2设置在同一个网段,子网地址是:设置在同一个网段,子网地址是:同时为路由器配置端口地址,使得两个子网内部的各PC机之间可以自由通信。
课程实 验报告
课程名称:
专业班级:计算机科学与技术1003班
学号:
姓名:鲁辰
指导教师:
报告日期:
计算机科学与技术学院
1
了解应用层和运输层的作用及相关协议的工作原理和机制。
掌握SOCKET编程的基本方法。
必须基于Socket编程,不能直接借用任何现成的组件。
提交实验设计报告和源代码;实验设计报告必须包括程序流程,源代码必须加详细注释。
而发件人地址、smtp服务器地址、用户名、密码从类的数据结构里面读取。
publicintSendAction(String to1,String constent1,String subject1)throwsException
{
String mailContent =""; etHostName();
基于自己的实验设计报告,通过实验课的上机试验,在TurboC(或者Visual C++或者Java)编程环境下将源代码
编译成功,运行演示给实验指导教师检查。
题目二:
编写邮件客户端,要求如下:
第一级:
实现一个基本的文本编辑器,能支持邮件的撰写和保存为草稿。
支持目录结构,能对邮件进行分类,并提供基本的收件箱、发件箱、草稿箱、垃圾箱等文件夹。
privateJTextFieldtxt_to;
privateJTextFieldtxt_subject;
privateJTextAreatextArea;
privateStringpusernameadd;
privateStringppasswd;
privateStringpsn_s_smtp;
privateStringpusername1;
else
{
int bb=submaillist[i].indexOf("Content-Transfer-Encoding: 7bit");
if(bb!=-1)
{
int ee=submaillist[i].substring(bb).indexOf("------=_Part");
String hh=submaillist[i].substring(bb+"Content-Transfer-Encoding: 7bit".length(),bb+ee);
1)使用仿真软件描述网络拓扑图
2)按如下要求配置RIP协议
按如下要求设置各PC机IP地址
PC1处于网段
PC2处于网段
PC3处于网段
PC4处于网段
设置路由器端口的IP地址
在路由器上配置RIP协议,使各PC机能互相访问
3)思考
如果不设置时钟频率,会出现什么现象
在路由器上重新配置OSPF协议,使PC机能互相访问
字符串,保存密码
privateStringpsn_s_smtp;
字符串,保存smtp服务器地址
privateStringpusername1;
字符串,保存用户名
publicclassSendFrameextendsJInternalFrame{
/**
*
*/
privatestaticfinallongserialVersionUID= 1L;
支持服务器上邮件下载完成后对邮件是否删除的操作。
具备完成所需功能的基本图形用户界面(GUI),并具友好性。
第四级:
支持普通文本邮件的发送。
可选择发送用帐号并可编辑发送用帐号。
支持发送进度指示和发送完成指示。
具备完成所需功能的基本图形用户界面(GUI),并具友好性。
第五级:
支持HTML、RTF格式邮件的撰写和发送。
文本框的句柄,用于填写收件人地址
privateJTextFieldtxt_subject;
文本框的句柄,用于填写标题
privateJTextAreatextArea;
文本框的句柄,用于填写邮件内容
privateStringpusernameadd;
字符串,保存当前用户的邮件地址
privateStringppasswd;
3)按如下要求重新设置各PC机IP地址
将PC1、PC2设置在同一个网段,子网地址是:
将PC3、PC5、PC7设置在同一个网段,子网地址是:
将PC4、PC6、PC8设置在同一个网段,子网地址是:
为路由器配置端口地址
4)分析测试连通性
分析各PC机之间的连通性并对分析结果进行测试,同时使用所学理论知识对测试结果进行再分析
maillist[i][2]=(m, m+(m).indexOf("\n"));
}
}
5)得到邮件内容
public String getmailcontent(int i)
{
int aa=submaillist[i].indexOf("X-CM-SenderInfo:");
if(aa==-1)
return "不能解析的邮件格式!";
return hh;
}
else
{
int ee=submaillist[i].substring(aa).indexOf("endhahamail");
return submaillist[i].substring(aa+"X-CM-SenderInfo:".length(), aa+ee);
}
}
}
6)保存所有邮件
ndexOf("\n");
maillist[i][0]=(x,x+(x,())).indexOf("\n"));
int k=("From: ")+"From: ".length();
maillist[i][1]=(k,k+(k).indexOf("\n") );
ength(), ("\n"));
int m=("Date: ")+"Date: ".length();
private void Saveall() throws IOException
{
try {
OutputStream os = new FileOutputStream("D:/");//创建一个文件
DataOutputStream dos = new DataOutputStream(os);
//int k = 0, i = 1, j = 1;
3
能够配置邮件服务器帐号并存储
4
支持POP3邮件完全下载
收信:基于POP3协议
5
支持POP3邮件按需下载
(先下载邮件头,根据需要全文下载)
6
支持下载保存/下载删除两种模式
7
支持纯文本邮件发送
写信:基于SMTP协议
8
支持邮件发送/接收进度显示
未完成
9
支持邮件本地分门别类存储
未完成
10
支持邮件的回复和转发
支持邮件帐号的配ห้องสมุดไป่ตู้与存储。
具备完成所需功能的基本图形用户界面(GUI),并具友好性。
第二级:
支持将邮件服务器上的邮件完全下载到本地并显示。
支持邮件下载时选择帐号管理器中的邮件服务器。
支持接收进度指示和接收完成指示。
具备完成所需功能的基本图形用户界面(GUI),并具友好性。
第三级:
支持邮件下载仅下载邮件头,并能根据需要实时下载邮件全部内容。
} catch (IOException e) {
输出异常
}
}
} catch (FileNotFoundException e) {
文件创建成功!");
}
}
}
通过编写邮件客户端,我掌握了TCP、SMTP、POP3的相关知识,并加深了自己对java语言的熟练程度。在编写程序的过程中,经常遇到不懂的地方,通过仔细阅读老师给出的和网上的例子程序的代码,我理清了思路,更快的写好了程序。
5)显示邮件
单击Download&Save会将邮件保存至本地
单击Download&Delete会将邮件保存到本地并从服务器上删除
单击Reply会把寄件人地址、标题作为参数传给Reply类,并弹出Send Mail对话框。
单击Reply会把内容、标题作为参数传给Forward类,并弹出Send Mail对话框。
2
了解IP协议、网络层协议和数据链路层协议的工作原理及机制;
掌握IP地址的规划方法;
掌握路由协议的配置方法。
掌握路由器及二/三层交换机的配置方法。
了解VLAN的划分原理;
掌握访问控制的配置方法。
Boson Netsin仿真软件(实验所用版本号为)
实验要求
熟悉Boson Netsim仿真软件
利用Boson Netsim仿真软件完成实验内容
int i=0;
for(i=1;i<20&&submaillist[i]!=null;i++)
{
try {
(submaillist[i]);
} catch (IOException e1) {
// TODO Auto-generated catch block
();
}
try {
();//关闭文件输出流
1)声明需要使用的库文件
由于Eclipse很智能,不需要手动添加,当调用了某个函数时,如果没有添加相应的库文件,Eclipse会报错,提供修改方案,在前面添加相应的库文件。
packageMailClient1;
import
import;
import
import
import
import;
import
import
1)登录界面:
按钮Login:单击Login之后,弹出主窗口,在调用主窗口的class时,将Mail Address和Password的内容作为参数传给主窗口的类,并交由主窗口进行验证。
2)主界面:
单击菜单,选择选项卡,会弹出相应的对话框。
3)写信:
填写收件人、题目、内容后可发送。
4)收信:
得到邮件的部分信息,单击Show,会弹出选中的邮件的完全显示,Download All会将邮件全部下载到本地。
写信(将相应内容当作参数传给对应函数)
高级内容
1
支持MIME格式邮件的撰写和发送
未完成
2
支持附件
3
支持邮件的抄写和密送
4
支持多邮件服务器,并可在发送和接收时选择邮件服务器
根据上述表格对相应的模块开始编写代码。
本次的实验使用Java编写,环境为Eclipse SDK。
由于直接使用Eclipse编写界面的代码太过复杂,所以我使用了Eclipse的插件Window Builder,可直接将控件拖拽到窗体中,并生成相应的代码,双击按钮时也会生成按钮的动作相关函数。
相关文档
最新文档