TCP学习二

 1 /*

 2 客户端流程:

 3 1.创建客户端socket服务对象,明确连接到哪个主机;

 4 2.将数据写到socket对象的输出流中;

 5 3.获取服务端发送回来的socket对象输入流;

 6 4.关闭服务

 7 */

 8 import java.net.*;

 9 import java.io.*;

10 class TCPSend2

11 {

12     public static void main(String[]args) throws Exception

13     {

14         //创建客户端socket服务对象,与此同时需要明确连接到哪个主机服务端

15         Socket socketSend=new Socket(InetAddress.getByName("127.0.0.1"),10003);

16         //将数据写到socket对象的输出流中

17         BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(socketSend.getOutputStream()));

18         String data="服务端你好,俺是客户端";

19         bw.write(data,0,data.length());

20         bw.flush();//别忘了这一步,否则服务端收不到数据,为NULL

21         

22         //关闭服务

23         socketSend.close();

24     }

25 }

26 

27 /* 

28     1.创建服务端socket服务对象,明确监听的端口号

29     2.获取服务端连接过来的socket对象

30     3.获取客户端发过来的数据(存放在输入流中)

31     4.关闭服务

32 */

33 class TCPReceive2

34 {

35     public static void main(String[]args) throws Exception

36     {

37         //1.创建服务端socket服务对象,明确监听的端口号

38         ServerSocket socketReceive=new ServerSocket(10003);

39         //2.获取服务端连接过来的socket对象

40         Socket socketSend=socketReceive.accept();

41         //3.获取客户端发过来的数据,就是获取客户端socket对象的输入流

42         BufferedReader br = new BufferedReader(new InputStreamReader(socketSend.getInputStream()));

43         String data;

44         data=br.readLine();

45         System.out.println(data);

46         //4.关闭服务

47         socketSend.close();//同时关闭连接过来的客户端socket

48         socketReceive.close();

49     }

50 }
View Code

 

你可能感兴趣的:(tcp)