多线程端口器Java课程设计报告源代码
山 东 科 技 大 学操作系统课程设计
李贞良
专业名称 _______软件工程__________
班 级:______10级三班___________
学 号 2______
信息科学与工程学院
二零一三年一月
目 录
设计任务与要求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
多线程端口器Java课程设计报告源代码
2系统功能描述错误未定义书签。
。 1 功能概述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
2。 本系统要实现的功能错误未定义书签。
3 系统总体设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
3 1 总体分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
3.2 界面设置构思图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
. 界面使用设置构思错误未定义书签。
3。 后台设计构思错误未定义书签。
4系统详细设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
4。 1 界面设计错误未定义书签。
4。 2 界面设计图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
.3后台设计错误未定义书签。
5 实现与测试错误未定义书签。
5.1 运行要求与环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
5.2 运行程序流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
5。 3运行界面错误未定义书签。
6 设计总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。
附件错误未定义书签。
多线程端口扫描器
设计任务与要求
加深对《Jav面向对象程序设计》课程所学知识的理解,进一步巩固 va语言的语法规则.分析系统的可行性让系统有一个明确的方向,使开发更具合理性并能分析
多线程端口器Java课程设计报告源代码
出系统的具体流程为后面的开发做好铺垫.明确本次课程设计所要用到的技术点并到网上搜索以及查阅相关的书籍来搜集资料。通过编写一个基于Java的应用系统综合实例来掌握Jva语言编程技巧.并学会编制结构清晰、风格良好的Jv语言程序,从而具备解决综合性实际问题的能力学会使用Ja 编程工具,如Ed itP lus Ec lip se等。2 系统功能描述
.1 功能概述
多线程端口扫描器是实现计算机的端口的扫描只要在在前台设置好所要扫描的IP、起始端口、结束端口以及所要用到的线程数 点击扫描就可以扫描到所输入IP地址主机的开放端口,并显示在主窗体中;点击退出,则可以退出该程序。 IP设置应为所在主机的IP地址起始端口和结束端口应为0 535之间的一个数,且起始端口应小于结束端口的大小.线程数为20之间的一个数。点击开始后就会运行,直到扫描完毕显示出开放端口如果没有开放端口则只显示扫描完毕。
2 2 本系统要实现的功能
①端口扫描功能扫描开放的端口并将扫描到的开放端口号送到前台。
②图像显示功能:显示界面图形。
③多线程功能 当客户端要求与服务器端建立连接时服务器端就将用到多线程功能为每一个建立起来的连接创建一个线程。
④ 异常抛出功能对于明显的错误,能提示出错误的类型并结束程序的运行。3系统总体设计
3 1 总体分析
本程序分为前后台系统后台系统用于扫描主机开放端口并把节扫描的数据送至前台窗口显示;前台要显示扫描的结果,所以应为一个窗口,这个窗口应能够设置主机的I地址设置端口的开始端口、结束端口和线程数并且还能够显示扫描的状态.在中央是显示结果的窗体。本程序还应能够有控制扫描的状态命令附加设置最小化和关闭按钮。
多线程端口器Java课程设计报告源代码
.2 界面设置构思图
图1系统构思图
3 界面使用设置构思
当出现如图所示的界面时填写好要扫描的I地址需要扫描的端口范围和线程数,单击命令提示按钮就可以开始扫描,扫描结果就会显示在中间的扫描结果显示区域在扫描状态显示区就会显示是否扫描完毕.流程图如下
多线程端口器Java课程设计报告源代码
图2系统构思流程图
3.4 后台设计构思
后台系统使用Scanner和Scan类,创建前台布局和创建扫描端口、事件处理,并且能对简单的错误进行判断,显示错误原因。调用数据处理包处理异常情况调用皮肤包美化显示窗口。
4系统详细设计
4。 1 界面设计
本程序界面图形设计要能清楚显示扫描后的结果并且能很好的体现出界面的整洁大方,但并不失去吸引人眼球的画面所以在做界面的时候考虑了界面的色彩并且添加
多线程端口器Java课程设计报告源代码
了皮肤界面上面的字体设置和idws窗口设置一样采用宋体界面上的按钮不设置过多的按钮仅设置有必要的按钮即可界面设置大方.使用的时候有默认的IP地址、需要扫描的端口和线程数如果需要扫描其他主机,只需要填写好要扫描的主机的I地址,需要扫描的端口范围和线程数,单击命令提示按钮就可以开始扫描,扫描结果就会显示在中间的扫描结果显示区域在扫描状态显示区就会显示是否扫描完毕。
2 界面设计图
本程序采用小窗口形式,外围大小为 0mm90m字体采用宋体五号结果显示区域框架大小为160mm45mm,底色为粉红,结果显示字幕为主机地址加开放端口.添加个性皮肤。其余地方设置按钮和扫描的主机地址、端口和线程数。设计的预计页面图形如图:
图3 系统界面设计图
4。 3 后台设计
本程序使用了为主要的canner类和can类.Scan类的作用是创建线程扫描端口然后把结果显示到前台。 Scanner类的作用是构造前台布局调用Scan类添加事件处理对输入进行错误判断如果输入不在允许的范围之内则显示相关错误。
在本程序中用到了网络编程的两个类下面介绍这两个类的常用方法。
In tS oketAddre s s类构造方法如下
eS ocktddre s ( eAddre s s adr int prt根据 地址和端口号创建套接字地址。
多线程端口器Java课程设计报告源代码
InetSoketAdress it port :创建套接字地址其中 P地址为通配符地址端口号为指定值。
InetS ktddre s(String ho stnme int po t根据主机名和端口号创建套接字地址。
oket类常用方法如下
Sock ):通过系统默认类型的Sock tImpl创建未连接套接字
Sock etAdrs dr ss nt port)创建一个流套接字并将其连接到指定I地址的指定端口号.
oid nd S o ck ddre s s np o int将套接字绑定到本地地址.
clse(关闭此套接字。
vod conect Scke Addrss endpint)将此套接字连接到服务器.
void con ct(ScketAddes edpoint, nt timout将此套接字连接到具有指定超时值的服务器。
o ean isClsed 返回套接字的关闭状态。
olean snectd 返回套接字的连接状态。
本程序还调用其他的一些类和包,比如软件包jva。 aw colo 、 jav 。 at。 evnt、 io IO Except 、 Javax。 Swing、 j vet。 ubstance。 *。
j ava。 aw 。 clor包的的描述提供用于颜色空间的类。它包含了基于国际色彩联盟 ( C) 配置文件格式规范的颜色空间实现。它还包含了基于IC配置文件格式规范的颜色配置文件。用来使界面更加具有色彩。
Re ult。 stBack gro un lor IN ;//设置窗口为粉红
。 t een 的描述:提供处理由T组件所激发的各类事件的接口和类。事件由事件源所激发,向事件源注册的事件侦听器可接收有关特定事件类型的通知.此包定义了事件和事件侦听器以及事件侦听器适配器它是让事件侦听器的编写过程更为轻松的便捷类。
在本程序中使用:publ c vod c ionPerormd(A onE nt e)
Str n cm = e getAct nomand )
i(c md. qua ls( S tar "))
多线程端口器Java课程设计报告源代码
…………
io IOxce n包的描述用来处理io的错误不仅仅是文件读写还包括很多stra的读写,而且t ows是用来放在函数定义的函数体前函数名后的表示这个函数将会在出现异常的书后会抛出io异常所以在以后的程序中调用这个函数的时候就必须用ty和cath来捕获异常,否则编译会报错这主要涉及到java的安全机制。
本程序中使用如下
r
mnPrt= ntge prs I P tSta ge tTe xt ))
maxort=Inte ger prseInt r End.getT t())
hredN um I nt e p a rs eI Thre um.g tTe xt );
ath(NumerFormtExcption e1 {
DLEror etBoun 300 28 ,299, 2 ;
DLGIN F O s ete ( 错误的端口号或线程数端口号和线程数必须为整数!")
DLINFO eBounds 1 20, 80, 0 ;
O。 setBounds(110 0,60 0)
DLError。 s V s b l rue)
reur
…………
vax。 Swin集合描述:由所有Jav图形用户界面GUI组件所构成可运行在任一支持Jva虚拟机(JVM的本地平台上。 由于这些组件全都是用Java语言编写的因此它们可以提供比本地平台GUI组件更多的功能。 与抽象窗口工具箱对比。ava Sing是aa onda in Classs JFC的一部分。在Sw g中,un开发了一个经过仔细设计的、灵活而强大的G UI工具包。 Sin g是在AT组件基础上构建的。它所提供的功能要比AWT提供的更为广泛.它也是Java技术的一种标准配置。
Swin模型
多线程端口器Java课程设计报告源代码
一个 va GU通常由顶层容器、 中间容器以及多个原子组件组成。每个原子组件或容器都可能触发相应事件的产生.容器是一类能够在其中容纳其他组件的特殊组件。
Sng的GUI组件类是按照类属层次以树状结构进行组织的。在这个树的最顶层,即树的根部,使一个最基本的容器类,被称为顶层容器。 Swing 提供了三个通用的顶层容器类rae ia lo g和JAp e 。 Frame提供了基于窗体的应用程序,JD ilg提供对话框形式的界面 JA let提供Jva小应用程序的界面形式。在顶层容器下是中间容器,用于容纳其他的组件.通常窗格本身在显示界面中是看不到的。面板类Pan l是一种中间容器它的唯一作用是使组件更容易定位。顶层容器通过getCn e ntP ae
)方法获取内部的一个内容窗格。
Swin包的组成
javx sig基本wng包包括Swing容器、组件及相关设置的类和接
口.
javax swin.borde 包括与边界设计相关的类和接口。
avx wing.co lrc hoos er:与颜色选择相关的类和接口。
jvax wn。 ent包括事件处理相关的类和接口。
ja x。 ing。 包括对文件进行查看选取的相关类。
java swing.p a 包括一些对外观样式操作的类和接口。
jaax。 sig.tree包括对树形组件进行操作的类和接口.
常用Swing组件
按钮 Jutto n
文本区 JTetAea
文本字段:JTexF ie d
在本程序中使用如下
/设置主窗体位置和大小
ma inFra setBo und 18 ,200,550,300 ;mainFrme.addindo wL ste r( w WndowAdap er )
public voi windoC losig WindowE t
Syste。 e xi (0);
妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款到网站余额,超过2天...
数脉科技怎么样?昨天看到数脉科技发布了7月优惠,如果你想购买香港服务器,可以看看他家的产品,性价比还是非常高的。数脉科技对香港自营机房的香港服务器进行超低价促销,可选择10M、30M的优质bgp网络。目前商家有优质BGP、CN2、阿里云线路,国内用户用来做站非常不错,目前E3/16GB阿里云CN2线路的套餐有一个立减400元的优惠,有需要的朋友可以看看。点击进入:数脉科技商家官方网站香港特价阿里云...
wordpress简洁英文主题,wordpress简洁通用大气的网站风格设计 + 更适于欧美国外用户操作体验,完善的外贸企业建站功能模块 + 更好的移动设备特色模块支持,更高效实用的后台自定义设置 + 标准高效的代码程序功能结构,更利于Goolge等国际搜索引擎的SEO搜索优化和站点收录排名。点击进入:wordpress简洁通用型高级外贸主题主题价格:¥3980 特 惠 价:¥1280安装环境:运...