主要方法:
- Socket accept() 用于获得连接过来的客户端Socket对象
服务器端实现步骤:
-
创建ServerSocket对象
-
循环调用accept方法获得连接
-
调用Socket对象的IO流来读取、发送数据。
public class Server {
public static final int PORT = 8888;
public void start(){
System.out.println(“启动服务器。。。”);
//创建ServerSocket对象
try {
ServerSocket server = new ServerSocket(PORT);
//循环获得客户端连接
while(true){
Socket client = server.accept();
System.out.println(client.getInetAddress()+“连接了”);
//获得客户端的输入流和输出流
try(DataInputStream dis = new DataInputStream(client.getInputStream());
DataOutputStream dos = new DataOutputStream(client.getOutputStream())){
//读取客户端的消息
System.out.println(“客户端”+client.getInetAddress()+“说:”+dis.readUTF());
//给客户端发消息
dos.writeUTF(“我是服务器端,客户端你好啊~~~~~~~~~~~~~~~~”);
}catch(IOException ex){
ex.printStackTrace();
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new Server().start();
}
}
客户端实现步骤:
-
创建Socket对象
-
调用Socket对象的getInputStream来读取数据。
-
调用Socket对象的getOutputStream来发送数据。
public class Client {
public void sendMessage(String ip,int port,String msg){
//创建Socket对象,连接服务器端
try {
Socket socket = new Socket(ip,port);
<