package com.zl; import java.net.ServerSocket; import java.net.Socket; import org.apache.commons.mvc.util.FileUtil; public class TestSocket { public static void main(String[] args) { new ServerThread().start(); } } //創建一個線程在后台監聽 class ServerThread extends Thread { public void run() { ServerSocket serversocket = null; try { serversocket = new ServerSocket(10000);// 創建一個serversocket對象,並讓他在Port端口監聽 while (true) { Socket socket = serversocket.accept();// 接收客戶端發送的請求 System.out.println(FileUtil.readFile(socket.getInputStream(), null, 1, false)); socket.close(); } } catch (Exception e) { e.printStackTrace(); } finally { try { serversocket.close(); } catch (Exception e) { e.printStackTrace(); } } } }
package com.zl; import java.io.OutputStream; import java.io.PrintWriter; import java.net.Socket; public class Test { public static void main(String[] args) throws Exception { socket(); } public static void socket() { try { Socket socket = new Socket("192.168.1.58", 10000);// 創建socket對象,指定服務器端地址和端口號 OutputStream output = socket.getOutputStream(); PrintWriter out = new PrintWriter(output, true);// 獲取 Client 端的輸出流 out.print("發送信息內容");// 填充信息 out.flush();out.close(); output.flush();output.close(); socket.close(); } catch (Exception e) { e.printStackTrace(); } } }
comet4j
http://blog.csdn.net/shadowsick/article/details/9014139
