23일차 메모(자바 Socket/IO(DataInputStream,FileOutputStream,File,BufferedReader,InputStreamReader,PrintWriter)/Vector 활용한 서버-클라이언트 간 채팅(여러명 동시채팅/서버에 파일 전송하는 클라이언트 프로그램)
23일차 메모
*네트워크프로그램
서버 / 클라이언트
1.서버소켓(accept)클라이언트접속허용
2.소켓객체생성
3.소켓통해 IOSTREAM으로 데이터주고받음
4.CLOSE
============================================================
서버 안에 소켓(서버소켓)들을 arraylist 또는 vector에 담아야한
다.
packge test.multi
class Server
*
vector/arraylist 차이
클래스내의 동기화처리가 되어있음 arraylist는 안되어있음.
============================================================
과제;=> day23_net(Client&Server)
1. 클라이언트가 접속하면 닉네임을 입력하도록 한다.
2. 클라이언트가 접속하면 xxx님이 입장하셨습니다. 라고 출력된다
.
3. 메시지 앞에 닉네임이 붙여서 출력된다.
4. 클라이언트가 나가면 xxx님이 퇴장하셨습니다. 라고 출력된다.
코드는, 서버/클라이언트 어느 쪽에서 바꿔도 됨
1.
클라이언트에 닉네임 추가
닉네임을 입력하세요.
2.
서버에서 맨 처음 받는 메세지는 클라이언트의 닉네임
<마지막단계>클라이언트가 exit로 나간 후에는
vector에 있는 해당 클라이언트가 삭제되야함.
(Line34)