[Java] 2020.12.07. day_32 채팅프로그램(오류발생)

2020. 12. 7. 12:19Web_Back-end/Java SE

◎ 채팅프로그램 만들어보기 (오류 발생할 예정)

채팅프로그램 만들어보기 (오류 발생할 예정)
computer A (Server) computer B (Client)
1. 포트를 연다
ServerSocket server = new ServerSocket( 5000 ); 
//5000번(임의)의 PORT가 열린다
-
- 2. 임의의 포트를 열고, 
설정된 ip컴퓨터의 설정된 port로 연결을 시도
Socket client = new Socket("ip", 5000);
//이때 Client의 port는 알 수 없다(임의의 port가 열림)
3. 접속자소켓이 있다면 접속자 소켓을 받는다
server.accept();
 
4. 접속자에게 보내기 위한 출력스트림 연결
DataOutputStream dos = new DataOutputStream(client.getOutputStream());
4. 접속자에게 보내기 위한 출력스트림 연결
DataOutputStream dos = new DataOutputStream(client.getOutputStream());
5. 접속자가 보내오는 내용을 읽기위한 입력스트림 연결
DataInputStream dis = new DataInputStream(client.getInputStream());
5. 접속자가 보내오는 내용을 읽기위한 입력스트림 연결
DataInputStream dis = new DataInputStream(client.getInputStream());
1~5 : 데이터를 주고 받을 준비 완료
6. 데이터를 스트림에 기록
String sendMsg = "안녕";
dos.writeUTF(sendMsg);
 
7. 스트림의 내용을 목적지로 분출
dos.flush();
 
6~7 : 데이터를 쓰기 : packet단위로 전달된다
  8. 소켓에 전달된 데이터를 읽기
String revMsg = dos.reatUTF();
  9. 데이터를 스트림에 기록
String sendMsg = "hello";
dos.writeUTF(sendMsg);
  10 스트림에 기록된 내용을 못적지로 분출
dos.flush();
11 스트림에 기록된 내용을 읽기
String revMsg = dis.readUTF();
 

--12.09. 이어서 할 예정--