java tcp客户端连接服务器端代码写法_tcp client connection method

tcp服务器端 tcp server

Server端所要做的事情主要是建立一个通信的端点,然后等待客户端发送的请求。典型的处理步骤如下:

1. 构建一个ServerSocket实例,指定本地的端口。这个socket就是用来监听指定端口的连接请求的。

2.重复如下几个步骤:

a. 调用socket的accept()方法来获得下面客户端的连接请求。通过accept()方法返回的socket实例,建立了一个和客户端的新连接。

b.通过这个返回的socket实例获取InputStream和OutputStream,可以通过这两个stream来分别读和写数据。

c.结束的时候调用socket实例的close()方法关闭socket连接。

tcp服务器端的代码写法如下:

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Arrays;

public class TcpServerTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {
		ServerSocket serverSocket = new ServerSocket(8000);
		while (true) {
			Socket s = null;
			//InputStreamReader read = null;
			InputStream ips = null;
			OutputStream ops = null;
			try {
				
				//获得客户端的连接请求
				s = serverSocket.accept();
				ips = s.getInputStream();
				ops = s.getOutputStream();
				ops.write("return msg.".getBytes());
				
				byte[] buf = new byte[1024];
				Arrays.fill(buf, (byte)0x00);
				int len = ips.read(buf, 0, 1024);
				byte[] getData = new byte[len];
				System.arraycopy(buf, 0, getData, 0, len);
				
				System.out.println("server get message:" + new String(getData));
			}
			catch (IOException e) {
				e.printStackTrace();
			}
			finally {
				if (ops != null) {
					ops.close();
				}
				if (ips != null) {
					ips.close();
				}
				if (s != null) {
					s.close();
				}
			}
		}
		
//		if(serverSocket != null){
//			serverSocket.close();
//		}
		
	}

}
来源://作者:/更新时间:2015-06-07
相关文章
评论:
验证码:
匿名评论: