课堂温习 Socket网络编程
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
/**
*服务端
*@author 母鸡
*/
public class Server {
public static void main(String[] args) {
try {
//监听8080端口号
ServerSocket serverSocket = new ServerSocket(8080);
System.out.println(“服务器启动完成…监听中”);
//开启监听 等待客户端的访问
Socket socket = serverSocket.accept();
//获取输入流,因为是客户端向服务端发送数据
InputStream inputStream = socket.getInputStream();
//创建一个缓冲器
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
String info = null;
//获取客户端发送的数据
while ((info = br.readLine()) != null){
System.out.println(“这里是服务器 客户端说:”+info);
}
//向客户端做出响应
OutputStream outputStream = socket.getOutputStream();
info = “这是是服务端我们收到了你消息”;
outputStream.write(info.getBytes());
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
import java.io.*;
import java.net.Socket;
/**
*客户端
*@author 母鸡
*/
public class Client {
public static void main(String[] args) {
try {
Socket socket = new Socket(“127.0.0.1”,8080);
//输出流
OutputStream outputStream = socket.getOutputStream();
String info = “猜猜我是谁”;
//将info写入流
outputStream.write(info.getBytes());
socket.shutdownOutput();
//接受服务端的响应
InputStream inputStream = socket.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
while ((info = br.readLine()) != null){
System.out.println(“接受到了服务器的响应”+info);
}
//刷新缓冲区
outputStream.flush();
outputStream.close();
inputStream.close();
br.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}