阅读背景:

java Socket通信小栗子

来源:互联网 

server端:

package com.test.socket;

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

public class SocketServer {
	public static void main(String[] args){
		System.out.println("Server statring...");
		SocketServer server = new SocketServer();
		server.init();
	}
	
	public void init(){
		try{
			ServerSocket serverSocket = new ServerSocket(12345);
			while(true){
				System.out.println("socketClient...");
				Socket socketClient = serverSocket.accept();
				new HandlerThread(socketClient);
			}
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	
	private class HandlerThread implements Runnable{
		private Socket socket;
		public HandlerThread(Socket client){
			socket = client;
			System.out.println("HandlerThread:" + client.toString());
			new Thread(this).start();
		}
		
		@Override
		public void run(){
			try{
				System.out.println("HandlerThread.run:");
				DataInputStream input = new DataInputStream(socket.getInputStream());
				byte clientInputBtye = input.readByte();
//				String clientInputStr = input.readUTF();
//				System.out.println("clientInputStr:" + clientInputStr);
				System.out.println("clientInputBtye:" + clientInputBtye);
				
				DataOutputStream out = new DataOutputStream(socket.getOutputStream());
				byte[] b = {00, 00, 00, 00, 00, 06, 01, 03, 00, 10, 00, 73, 00};
	   // Clinet receiveStr:00  00  00  00  00  06  01  03  00  00  00  02 00
				out.write(b, 0, b.length);
				
				out.close();    
                input.close(); 
			}catch(Exception e){
				e.printStackTrace();
			}finally{
				if(socket != null){
					try{
						socket.close();
					}catch(Exception e){
						socket = null;
						e.printStackTrace();
					}
				}
			}
		}
	}
	
}


package com.test.socket;

import java




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: