作者:Florence珠宝定制 | 来源:互联网 | 2023-08-28 14:08
实例原处:http:www.cnblogs.comzhoudip6025552.html一、搭建服务器端a)、创建ServerSocket对象绑定监听端口。b)
实例原处:http://www.cnblogs.com/zhoudi/p/6025552.html
一、搭建服务器端
a)、创建ServerSocket对象绑定监听端口。
b)、通过accept()方法监听客户端的请求。
c)、建立连接后,通过输入输出流读取客户端发送的请求信息。
d)、通过输出流向客户端发送请求信息。
e)、关闭相关资源。
package socket;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;public class SocketService {public static void main(String[] args) throws IOException{SocketService socketService = new SocketService();socketService.oneServer();}public void oneServer(){try{ServerSocket server=null;try{server=new ServerSocket(5209);System.out.println("服务器启动成功");}catch(Exception e) {System.out.println("没有启动监听:"+e);}Socket socket=null;try{socket=server.accept();}catch(Exception e) {System.out.println("Error."+e);}String line;BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));PrintWriter writer=new PrintWriter(socket.getOutputStream());BufferedReader br=new BufferedReader(new InputStreamReader(System.in));System.out.println("Client:"+in.readLine());line=br.readLine();while(!line.equals("end")){writer.println(line);writer.flush();System.out.println("Server:"+line);System.out.println("Client:"+in.readLine());line=br.readLine();} writer.close(); in.close(); socket.close(); server.close(); }catch(Exception e) {System.out.println("Error."+e);}}
}
二、搭建客户器端
a)、创建Socket对象,指明需要连接的服务器的地址和端口。
b)、建立连接后,通过输出流向服务器发送请求信息。
c)、通过输入流获取服务器的响应信息。
d)、关闭响应资源
package socket;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.URL;public class SocketClient {public static void main(String[] args) throws IOException {try {Socket socket = new Socket("192.168.1.115", 5209);System.out.println("客户端启动成功");BufferedReader br = new BufferedReader(new InputStreamReader(System.in));PrintWriter write = new PrintWriter(socket.getOutputStream());BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));String readline;readline = br.readLine(); while (!readline.equals("end")) {write.println(readline);write.flush();System.out.println("Client:" + readline);System.out.println("Server:" + in.readLine());readline = br.readLine(); } write.close(); in.close(); socket.close(); } catch (Exception e) {System.out.println("can not listen to:" + e);}}
}
先启动服务器端,再启动客户端(顺序不能乱),ip地址换成自己的ip地址