互联网程序设计实验六.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
实验报告(六) "课程名称:互联网程序设计 "年级: "实验日期: " "姓名: "学号: "班级: " "实验名称:实验六 TCP文件传输/端 "教师评语(成绩): " "口扫描器(2学时) " " 一、实验目的及要求 (1)理解掌握SwingWorker类的用法。 (2)理解掌握端口扫描的编程方法。 (3)学习Swing界面设计技术 二、实验环境 多媒体计算机 Windows7操作系统 JDK 8 Netbeans IDE8.2(开发语言Java) 实验内容 重温本章完成的基于TCP协议的客户机/服务器文件传输项目,综合运用Swing界面设计 .SwingWorker类和端口连接测试技术,实现网络端口的扫描检测功能。图6.13给出针对 ww.163. com的80~90端口所做的扫描测试实例,扫描结果显示,80、81、88三个端口可达,其余 不可达。 四、实验步骤(或记录)及相关代码 主要代码: protected List<Target> doInBackground() throws Exception { long connectStart; long connectFini 在本次“互联网程序设计实验六”中,学生们主要聚焦于TCP文件传输和端口扫描器的实现,通过使用Java语言和Swing库进行界面设计。实验的目标是掌握SwingWorker类的应用,理解端口扫描的编程技巧,并进一步熟悉Swing界面设计。 SwingWorker类在Java中是一个用于在后台线程执行耗时操作的工具类,它允许在不影响用户界面的情况下进行计算,从而提升用户体验。在实验中,SwingWorker被用来处理端口扫描这样的异步任务,防止因为网络延迟导致的UI冻结。SwingWorker具有`doInBackground()`方法,这是在后台执行的主要工作函数,在这个方法里,你可以执行那些不应该在事件分发线程中运行的任务,比如尝试建立TCP连接来扫描端口。 端口扫描是网络安全和网络管理中的一个基本概念,它涉及向目标主机的多个端口发送请求,以确定哪些端口开放并监听连接。在实验中,学生编写了代码遍历指定范围内的端口(例如80到90),使用`Socket`类尝试连接到每个端口。如果连接成功,说明该端口是开放的,如80、81、88所示;如果连接失败或超时,则表示端口关闭或不可达。 实验环境中,学生使用了Windows 7操作系统,JDK 8作为Java开发环境,以及Netbeans IDE 8.2来编写和运行代码。Netbeans是一个强大的集成开发环境,支持Java应用开发,提供代码编辑、调试、测试和部署等功能,使得编程过程更加高效。 在实验步骤中,代码首先初始化了必要的变量,如开始连接时间`connectStart`和结束连接时间`connectFinish`,以及可能抛出的异常对象`exception`。接着,代码根据是否单个IP地址还是IP地址范围来构建目标IP地址,并对每个IP地址的每个端口进行扫描。在尝试连接时,使用了`SocketAddress`封装了目标的IP地址和端口号,然后调用`clientSocket.connect(remoteAddr,400)`尝试连接,设置400毫秒的超时时间。 通过这个实验,学生不仅掌握了TCP文件传输的基础,还学习了如何使用SwingWorker进行异步编程,以及如何利用Java的网络API进行端口扫描,这些技能对于进行网络应用程序开发至关重要。同时,实验还强调了Swing界面设计,让学生能够创建直观、响应迅速的用户界面。
- 粉丝: 189
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助