客户端:
1.连接服务器Socket
2.发送消息
服务端:
1.建立服务端口ServerSocket
2.等待用户的连接accept
3.接收用的消息
==========================
package com.wuming.lesson02;import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket;//服务端 public class TcpServer03 {public static void main(String[] args) {ServerSocket serverSocket=null;Socket socket=null;InputStream is=null;ByteArrayOutputStream baos=null;//1.提供地址try {serverSocket = new ServerSocket(9999);while(true){//2.连客户端socket = serverSocket.accept();//3.读客户端消息is = socket.getInputStream();/** byte[] buffer = new byte[1024];int len;while((len=is.read(buffer))!=-1){java.lang.String msg = new java.lang.String(buffer, 0, len);System.out.println(msg);}* *///管道流baos = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len;while((len=is.read(buffer))!=-1){baos.write(buffer,0,len);}System.out.println(baos.toString());}} catch (IOException e) {e.printStackTrace();}finally {//关闭资源if (baos!=null){try {baos.close();} catch (IOException e) {e.printStackTrace();}}if(is!=null){try {is.close();} catch (IOException e) {e.printStackTrace();}}if(socket!=null){try {socket.close();} catch (IOException e) {e.printStackTrace();}}if(serverSocket!=null){try {serverSocket.close();} catch (IOException e) {e.printStackTrace();}}}} } =========================
package com.wuming.lesson02;import java.io.IOException; import java.io.OutputStream; import java.net.InetAddress; import java.net.Socket;//客户端 public class TcpClientDemo01 {public static void main(String[] args) {OutputStream os=null;Socket socket=null;//1.服务器地址try {InetAddress serverIp = InetAddress.getByName("127.0.0.1");int port=9999;//2.创socket连接socket = new Socket(serverIp,port);//3.发送消息IO流os = socket.getOutputStream();os.write("你好".getBytes());} catch (Exception e) {e.printStackTrace();}finally {if(os!=null){try {os.close();} catch (IOException e) {e.printStackTrace();}}if(socket!=null){try {socket.close();} catch (IOException e) {e.printStackTrace();}}}} }
============
先启动服务端,在启动客户端,在服务端控制台看打印结果为:
你好
在启动客户端,结果为(因为服务端用来while(true)):
你好
你好