ServerSocket 및 Socket 통신(클라이언트가 메시지 서버에서 수신하고 클라이언트로 반환하여 출력)
2260 단어 JAVA 관련
1. 서버 측 구축
| - 서버 기반 통신 ServerSocket
|- 서버에서 Socket 수신 클라이언트 연결 설정
|- 입출력 입력 흐름 읽기 클라이언트가 보낸 데이터 만들기
|- IO 출력을 클라이언트로 전송하기 위해 데이터 메시지 생성
2. 클라이언트 구축
|- Socket 통신을 생성하고 통신 서버의 IP 및 Port를 설정합니다.
|- 입출력 출력을 서버로 전송하는 데이터 메시지 만들기
|- 입출력 입력 흐름 읽기 서버에서 보내는 데이터 메시지 만들기
전체 절차가 이렇다.
서버 측:
package server.cotrol;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Server02 {
public static void main(String[] args) {
try {
ServerSocket ss = new ServerSocket(8888);
System.out.println(" ....");
Socket s = ss.accept();
System.out.println(" :"+s.getInetAddress().getLocalHost()+" ");
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
//
String mess = br.readLine();
System.out.println(" :"+mess);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
bw.write(mess+"
");
bw.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
}
클라이언트:package client.cotrol;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client02 {
public static void main(String[] args) {
try {
Socket s = new Socket("127.0.0.1",8888);
// IO
InputStream is = s.getInputStream();
OutputStream os = s.getOutputStream();
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));
//
bw.write(" ,
");
bw.flush();
//
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String mess = br.readLine();
System.out.println(" :"+mess);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MybatisPlusException: Error: Method queryTotal execution error.먼저 상황을 설명하자면, 이것은 내가 만난 일종의 상황이다. 내가 만든 테이블에는 키워드가 있습니다: DESC 아래에 이상 붙이기: (부분만 붙이고 이상 정보가 너무 많아서 필요 없어요) org.mybatis.spr...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.