목록공부 (23)
쨍쨍
[ 서버 ] main.java import java.io.IOException; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; public class Main { public static ArrayList OutputList; public static void main(String[] args) { OutputList = new ArrayList(); System.out.println("서버가 시작되었습니다. 클라이언트의 연결 요청을 기다리고 있습니다..."); try { ServerSocket serversocket = new ServerSocket(80..
[ 서버 코드 ] static List list = collections.synchronizedlist(new ArrayList()); 이때 static을 붙이는 이유는 static 없이 그냥 list를 선언하게 되면 새로운 클라이언트가 들어올 때마다 새로운 list가 생기기 때문이다. 내가 원하는대로 채팅방에 들어온 인원의 정보를 한 list에 담기 위해서는 static을 붙여서 list를 선언해줘야합니다. socket = serverSocket.accept(); serverSocket 객체를 생성하여 클라이언트의 연결 요청을 대기한 후 클라이언트가 연결 요청을 보내면 accept() 메서드를 호출하여 클라이언트와 서버를 연결합니다. ReceiveThread receiveThread = new Rece..
프로토콜(Protocol) 컴퓨터와 컴퓨터 사이에서 데이터를 원활히 주고 받기 위하여 약속한 여러가지 규악이다. 대표적인 프로토콜의 종류로는 5개가 있다. └ TCP/IP - 인터넷 접속을 위한 기본 프로토콜 └ HTTP - 홈페이지를 제대로 띄우기 위한 프로토콜 └ FTP - 빠른 파일 송수신을 위한 프로토콜 └ SMTP, POP - 이메일을 보내고 받을 수 있는 프로토콜 └ DHCP - 인터넷 주소를 자동할당 설정 프로토콜의 주요기능으로는 8개로 아래와 같다. 주소지정 네트워크에서 다른 객체를 식별하기 위한 주소를 부여한다. 순서지정 데이터 단위의 통신을 할 때 전송 순서를 명시하여 순서 역전이나 중복 패킷 발생 등을 방지한다. 단편화와 재조립 전송하려는 데이터의 용량이 큰 경우, 대용량 파일의 패킷..