[Java] 채팅 프로그램 소켓 연결 구현 1 - 1 대 1 통신을 해보자
·
Java/IO & Network
순수 자바로 로컬 서버에서 실행할 수 있는 채팅 프로그램을 구현하는 것을 목표로 했다.연결하고 1대1 대화가 가능하도록 먼저 구현하고 차차 n:n 채팅이 되도록 리팩토링 해보자.서버 코드package chat;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;import java.util.Scanner;import static util.MyLogger.log;public class Server { private static final int PORT = 13423; public static v..
[Java] 두줄로 이해하는 객체 직렬화, 역직렬화
·
Java/IO & Network
자바에서 객체 직렬화 (Serialization)는 메모리에 있는 객체 인스턴스를 바이트 스트림으로 변환하여 파일에 저장하거나 네트워크를 통해 전송할 수 있는 기능이다반대로 역직렬화 (Deserialization) 은 바이트 스트림을 다시 객체화 시키는 작업을 의미한다. 근데 요새는 XML, JSON , 데이터 베이스 쓰니까 잘 안쓰긴함ㅋㅋ그래도 XML, JSON , 데이터 베이스 같은 저장 방식의 조상님격이라 한번 알아봤다!import java.io.*;import java.util.ArrayList;import java.util.List;/** * Object 스트림은 컬렉션을 통으로 쓰고 통으로 읽는다 * writeObject() , readObject() */public class ObjectMe..