领导让用java 类 写一个 telnet 测试某机器的端口是否可用,查约好多资料,最后根据网上提示 写了一个小工具类,不知道是不是有用,也不知道是不是有不妥的地方,还请众大神多指教。
需求给出一个 IP地址和一个端口号,用此方法可以测出该端口是否可用,如果可用返回true,否则返回false。具体代码如下:
package com.nms.www.util;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
import org.apache.commons.net.telnet.TelnetClient;
public class TcpServiceStatus {
/** 新建一个TelnetClient对象 */
private TelnetClient telnetClient = new TelnetClient();
/** 向 服务器写入 命令 */
private PrintStream out;
/** 输入流,接收返回信息 */
private InputStream in;
public boolean telnet(String ip, Integer port){
if ((ip != null && !ip.equals("")) && (port != null && port != 0)) {
try {
telnetClient.connect(ip, port);
in = telnetClient.getInputStream();
out = new PrintStream(telnetClient.getOutputStream());
return true;
} catch (Exception e) {
return false;
}finally{
try {
telnetClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}else{
return false;
}
}
/**
* 测试方法,完成后请删除!!!
* @param args
*/
public static void main(String[] args) {
TcpServiceStatus telnetTest = new TcpServiceStatus();
boolean b = telnetTest.telnet("192.168.100.118", 8080);
System.out.println(b);
}
}
需要用到 commons-net-2.0.jar
jar和工具类 下载地址: http://download.csdn.net/download/dejie0806/10040252
要感谢 网上不知名的大神,更不知道原始出处是谁,在此没有办法标注,还请见谅!