刚学JAVA,做了个SOCKET服务器心跳包,只能实现正常心跳检测,无法实现心跳停止,短信通知管理员!想知道怎么改才正确!

来源:互联网 发布:淘宝六个差评 编辑:程序博客网 时间:2024/04/28 12:23

import java.io.*;  
import java.net.*;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
  
 public class DS {
   String a = "正常"; 
  @SuppressWarnings("resource")
 public void go(){
  try{   
  ServerSocket serverSock = new ServerSocket(4242);      
   while(true){    
    Socket sock = serverSock.accept();     
    PrintWriter writer = new PrintWriter(sock.getOutputStream());    
    writer.println(a);
    writer.close();
    System.out.println("你说:"+a);
       run();

   }
  }catch(IOException ex){
    // System.out.println("IOException:"); 
   ex.printStackTrace();
    }   }      
  public static void main(String[] args){
   DS server = new DS();
   server.go();
  } 
 private void run() { 
   if(serverSock!= null){

System.out.println("TRUE");    
   }else{

    HttpClient client = new HttpClient(); 
          PostMethod post = new PostMethod("http://sms.webchinese.cn/web_api/"); 
          post.addRequestHeader("Content-Type", 
                  "application/x-www-form-urlencoded;charset=gbk");// 在头文件中设置转码 
          NameValuePair[] data = { new NameValuePair("Uid", "****"), // 注册的用户名 
                  new NameValuePair("Key", "************"),
  // 注册成功后,登录网站使用的密钥,这个密钥要登录到国建网然后有一个API接口,点进去就有一个key,可以改,那个才是密钥 
                  new NameValuePair("smsMob", "********"), // 手机号码 
                  new NameValuePair("smsText", "通知系统故障") };//设置短信内容         
    post.setRequestBody(data);
  try {
   client.executeMethod(post);
  } catch (HttpException e1) {   
   e1.printStackTrace();
  } catch (IOException e1) {
   e1.printStackTrace();
  } 
  Header[] headers = post.getResponseHeaders(); 
  int statusCode = post.getStatusCode(); 
  System.out.println("statusCode:" + statusCode);
  for (Header h : headers) {
  System.out.println(h.toString()); 
  } 
    String result = null;
  try {
   result = new String(post.getResponseBodyAsString().getBytes( 
     "gbk"));
  } catch (UnsupportedEncodingException e) {
   e.printStackTrace();
  } 
  System.out.println(result); 
  post.releaseConnection(); 
  } 
} }

原创粉丝点击