📄 nettest.java.bak
字号:
import java.net.*;
import java.io.*;
import java.util.*;
public class NetTest extends Thread{
final int ARRAYSIZE=1000;
Socket scon;
Timer time;
DataBaseSQL sqlDate = new DataBaseSQL();
String sSele;
ConfigFloor floor=new ConfigFloor();
ConfigFloor temp;
Vector data;
String scanIP;
int scanPort;
int times[]=new int[ARRAYSIZE];
int tempTime=0;
int i=0;
boolean scanType;
public NetTest(){
sSele="select * from Config";
data=sqlDate.setSelect(sSele,2);
sqlDate.conClose();
}
public void run(){
for(i=0;i<data.size();i++){
Vector v=new Vector();
v=(Vector)data.elementAt(i);
temp=floor.parseFloor(v);
scanPort=temp.getPort();
scanIP=temp.getIP();
times[i]=temp.getWrongTimes();
tempTime=temp.getTimes();
if(scanPort==0){
scanType=ping(scanIP);
if(scanType==false){
tempTime++;
temp.setStatus("失败");
}
else{
temp.setStatus("成功");
}
if(tempTime>=3){
times[i]++;
tempTime=0;
warning();
DataBaseSQL uuu=new DataBaseSQL();
Date currdate1 = new Date();
String insert="insert into Log(logDate,IP,port,wrongType)values('"+currdate1+"','"+temp.getIP()+"',0,1)";
uuu.setInsert(insert);
uuu.conClose();
}
}
else{
scanType=connectNet(scanIP,scanPort);
if(scanType==false){
tempTime++;
temp.setStatus("失败");
}
else{
temp.setStatus("成功");
}
if(tempTime>=3){
times[i]++;
tempTime=0;
warning();
DataBaseSQL u=new DataBaseSQL();
Date currdate = new Date();
String insert="insert into Log(logDate,IP,port,wrongType)values('"+currdate+"','"+temp.getIP()+"',"+temp.getPort()+",2)";
u.setInsert(insert);
u.conClose();
}
}
DataBaseSQL uu=new DataBaseSQL();
String updateData="UPdate Config set status='"+temp.getStatus()+"',wrongTimes="+times[i]+",times="+tempTime+" where IP='"+temp.getIP()+"'";
uu.setUpdate(updateData);
uu.conClose();
}
}
void warning(){
System.out.println("\07");
}
protected boolean connectNet(String ip,int port){
InetAddress url=null;
int juge=0;
try{
url=InetAddress.getByName(ip);
Socket sc = new Socket(url,port);
juge=1;
sc.close();
}
catch(Exception e){
juge=-1;
}
return juge>0?true:false;
}
protected boolean ping(String ip){
Runtime rt=null;
int juge=0;
int aa=0, bb=0;
try{ rt = Runtime.getRuntime();
Process p = rt.exec("ping "+ip);
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(p.getInputStream()));
String s;
while((s = bufferedReader.readLine())!=null){
bb=s.indexOf("Received =");
if(bb>0){
String str=s.substring(bb+11,bb+12);
int cc=Integer.parseInt(str);
if(cc>0)juge=-1;
aa=1;
break;
}
if(aa!=1){
juge=1;
}
}
}
catch(Exception e){
System.out.println("调用Ping错误!");
e.printStackTrace();
}
finally{
rt.gc();
}
return juge>0?true:false;
}
/*
public static void main(String args[]){
new NetTest();
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -