java socket例子

阅读更多

今天没事继续试着玩,感觉这次一定要彻底搞定了,不能继续像以前那样了!!!

 

Server端

package test.bwl;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class SocketManager {
	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) {
		SocketManager manager = new SocketManager();
		manager.doListen();
	}

	public void doListen() {
		ServerSocket server;
		try {
			server = new ServerSocket(9991);
			while (true) {
				Socket client = server.accept();
				new Thread(new SSocket(client)).start();
			}
		} catch (IOException e) {
			e.printStackTrace();
		}

	}

	//服务器进程
	class SSocket implements Runnable {

		Socket client;

		public SSocket(Socket client) {
			this.client = client;
		}

		public void run() {
			DataInputStream input;
			DataOutputStream output;
			try {
				input = new DataInputStream(client.getInputStream());
				output = new DataOutputStream(client.getOutputStream());
				//
				String listMsg = input.readUTF();
				output.writeUTF("Recive:  " + listMsg + "    \r\n Thx...");
				System.out.println("Recive:   " + listMsg);
				listMsg = input.readUTF();
				output.writeUTF("Recive Second:  " + listMsg + "    \r\n Thx...");
				System.out.println("Recive Second:   " + listMsg);
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

}

 

Client端:

package test.bwl;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;

public class SocketClient {

	public static void main(String[] args) {
		Socket socket = null;
		try {
			socket = new Socket("127.0.0.1", 9991);
			//向服务器端第一次发送字符串   
			OutputStream netOut = socket.getOutputStream();
			DataOutputStream doc = new DataOutputStream(netOut);
			DataInputStream in = new DataInputStream(socket.getInputStream());
			//向服务器端第二次发送字符串   
			doc.writeUTF("list");
			String res = in.readUTF();
			System.out.println(res);
			doc.writeUTF("bye");
			res = in.readUTF();
			System.out.println(res);
			doc.close();
			in.close();
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (socket != null) {
				try {
					socket.close();
				} catch (IOException e) {
				}
			}
		}
	}
}

 

 

你可能感兴趣的:(Socket,Java,.net,thread,HTML)