|
|
@@ -0,0 +1,38 @@
|
|
|
+package _02_chat;
|
|
|
+
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.InputStream;
|
|
|
+import java.io.OutputStream;
|
|
|
+import java.net.ServerSocket;
|
|
|
+import java.net.Socket;
|
|
|
+import java.util.Scanner;
|
|
|
+
|
|
|
+public class Server {
|
|
|
+ public static void main(String[] args) throws IOException {
|
|
|
+ Scanner scanner = new Scanner(System.in);
|
|
|
+// 1:创建一个服务端对象(ServerSocket)
|
|
|
+ ServerSocket serverSocket = new ServerSocket(8888);
|
|
|
+ while (true){
|
|
|
+ // 2:侦听客户端的连接,获取和客户端通信的Socket对象
|
|
|
+ Socket socket = serverSocket.accept();
|
|
|
+// 3:从Socket获取输入流,接收服务器发送的数据
|
|
|
+ InputStream inputStream = socket.getInputStream();
|
|
|
+ byte[] buff= new byte[1024];
|
|
|
+ int len = -1;
|
|
|
+ while ((len = inputStream.read(buff))!=-1){
|
|
|
+ System.out.println("粉丝:"+new String(buff,0,len));
|
|
|
+ }
|
|
|
+ String inputMsg = scanner.nextLine();
|
|
|
+// 5 调用Socket对象shutdownInput方法通知服务端数据收集完毕
|
|
|
+ socket.shutdownInput();
|
|
|
+
|
|
|
+ OutputStream outputStream = socket.getOutputStream();
|
|
|
+ outputStream.write(inputMsg.getBytes());
|
|
|
+// 3 调用Socket对象shutdownOutput 方法通知服务端数据发送完毕
|
|
|
+ socket.shutdownOutput();
|
|
|
+// 7:关闭Socket对象
|
|
|
+ socket.close();
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|