2016-04-05 17 views
0

私は非常に基本的な必要性があります。私は "STOP"や "再起動"のような基本的な管理コマンドの完全な手のいずれかのための特定のポートで聞きたいです。今のところ、私はメッセージが誰から来たのかを確認することについて気にしません。ポート上で特定の文字列を自動的にリッスンするJavaクラス?

私は明らかにserversocketを作成して、新しいソケットごとにリスナーを生成してから、私が期待しているメッセージをバッファリングして、それを行うのは不可能ではありません。

しかし、そこにJavaクラスやライブラリがあれば、ほとんどのことができますか?完全なJAX-RSサーバーほど堅牢ではありませんが、まだ書かれていますか?

答えて

0
private void startTcpServer() { 
ServerSocket serversocket = null; 
try { 
    serversocket = new ServerSocket(TCP_SERVER_PORT); 
    //accept connections 
    Socket socket = serversocket.accept(); 
    BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); 
    //receive a message 
    String incomingMsg; 
    while((incomingMsg = in.readLine())!=null){ 
     Log.i("TcpServer", "received: " + incomingMsg); 
     // compare incomingMsg with your list of commands 
    } 
    socket.close(); 
} catch (InterruptedIOException e) { 
    //if timeout occurs 
    e.printStackTrace(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} finally { 
    if (serversocket != null) { 
     try { 
      serversocket.close(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
} 

}

関連する問題