Java Socket基本使用

首先 编写Client程序:

 1 import java.io.IOException;
 2 import java.net.Socket;
 3 import java.util.Scanner;
 4 
 5 public class Client {
 6     public static void main(String[] args) throws IOException {
 7         /**
 8          * 创建Socket
 9          * 接收服务器端发送数据
10          */
11         Socket socket = new Socket("127.0.0.1", 9999);
12         Scanner sc = new Scanner(socket.getInputStream());
13         sc.useDelimiter("\n");
14         while(sc.hasNext()){
15             System.out.println(sc.next());
16         }
17         sc.close();
18         socket.close();
19     }
20 }

客户端通过多线程发送给客户端数据:

 1 import java.io.PrintStream;
 2 import java.net.ServerSocket;
 3 import java.net.Socket;
 4 
 5 class ThreadSocket implements Runnable {
 6     /**
 7      * 线程接收到socket实例后执行run()处理
 8      */
 9     private Socket socket;
10     
11     public ThreadSocket(Socket socket) {
12         this.socket = socket;
13     }
14 
15     @Override
16     public void run() {
17         try {
18             PrintStream printStream = new PrintStream(socket.getOutputStream());
19             printStream.println("<h1 align='center'>nihao erzhi</h1>");
20             printStream.close();
21             socket.close();
22         } catch (Exception e) {
23             e.printStackTrace();
24         }
25     }
26 }
27 
28 public class Server {
29     public static void main(String[] args) throws Exception {
30         /**
31          * 创建ServerSocket
32          */
33         ServerSocket server = new ServerSocket(9999);
34         Socket socket = null;
35         while (true) {
36             /**
37              * 死循环监听端口
38              * 有消息开一个线程处理
39              */
40             socket = server.accept();
41             new Thread(new ThreadSocket(socket)).start();
42         }
43     }
44 }

 

posted @ 2018-10-28 17:34  sqdtss  阅读(230)  评论(0编辑  收藏  举报