TCP面向连接的协议,安全性较高,类似于打电话,但是效率较低。它的基础模式是Request-Respond。在这里面我们使用的事java已经封装好的套接字类ServerSocket和Socket
前者是服务器,后者是客户端,这个有一点不同,客户端的端口是自动获取们不需要我们像UDP一样还需要我们指定,当C、S建立连接之后就会在两者之间建立一个管道,服务端的输出流就是客户端的输入流。
对于客户端和服务端之间的通信。客户端是接收数据+发送数据
1、客户端:
public class Clients {
public static void main(String[] args) throws UnknownHostException, IOException {
// TODO Auto-generated method stub
Socket client=new Socket("localhost",5888);
char[] cbuf=new char[1024];
InputStreamReader in=new InputStreamReader(client.getInputStream());
in.read(cbuf);
System.out.println(String.valueOf(cbuf));
}
}
2.服务端通信:
public class Servers {
public static void main(String [] arg) throws IOException{
ServerSocket server=new ServerSocket(5888);
Socket socket=server.accept();
System.out.println("success");
BufferedWriter bf=new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
bf.write("wangjun");
bf.flush();
}