HTTP 서버 프로그램 - 애노테이션 (2)
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 11. HTTP 서버 프로그램 - 애노테이션 리플렉션을 활용한 서버 프로그램은 요청 URL과 메서드 이름이 같을 때만 동작한다. 따라서 / 요청을 처리하기 위한 작업은 컨트롤러에 둘 수 없고 별도의 서블릿으로 구현해야 했다. 그리고 /site1이 와도 page1()과 같은...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 11. HTTP 서버 프로그램 - 애노테이션 리플렉션을 활용한 서버 프로그램은 요청 URL과 메서드 이름이 같을 때만 동작한다. 따라서 / 요청을 처리하기 위한 작업은 컨트롤러에 둘 수 없고 별도의 서블릿으로 구현해야 했다. 그리고 /site1이 와도 page1()과 같은...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 10. Java 애노테이션 ReflectionServlet은 요청 URL과 메서드 이름이 같다면 해당 메서드를 동적으로 호출할 수 있다. 하지만 URL과 메서드 이름이 다르면 호출할 수 없다. 이 문제는 애노테이션을 활용해 해결할 수 있다. Controller에 추가 ...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 9. HTTP 서버 프로그램 - 리플렉션 앞서 커맨드 패턴으로 만든 서블릿은 두 가지 단점이 있다. 하나의 클래스에 하나의 기능만 만들 수 있다. 새로 만든 클래스를 URL 경로와 항상 매핑해야 한다. 비슷한 기능을 하는 서블릿들을 하나의 컨트롤러 클래스에 모은다....
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 8. HTTP 서버 프로그램 - 커맨드 패턴 아래와 같이 /, /site1, /site2, /search 경로로 이동 가능한 간단한 웹페이지 서버를 만든다. 서버는 여러 클라이언트(브라우저)의 요청을 처리할 수 있어야 한다. 그리고 경로 별 기능은 커맨더 패턴을 활용해 수...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 7. 채팅 프로그램 7-1. 설계 요구사항은 다음과 같다. 서버에 접속한 사용자는 모두 대화할 수 있어야 한다. 다음과 같은 채팅 명령어가 있어야 한다. 입장 /join|{name} 처음 채팅 서버에 접속할 때 ...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 6. 네트워크 프로그램 클라이언트가 문자를 서버에 전달하면 서버는 클라이언트의 요청에 “ World”라는 단어를 더해서 응답하는 채팅 프로그램을 만든다. 서버는 한 번에 여러 클라이언트와 연결할 수 있고 클라이언트와 서버가 종료될 때 자원이 잘 정리될 수 있도록 개발한다. ...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 5. File, Files 자바에서 파일 또는 디렉토리를 다룰 때는 File, Files, Path 클래스를 사용한다. 자바 1.0에서 File 클래스가 등장하고 자바 1.7에서 File 클래스를 대체할 Files와 Path가 등장했다. Files는 성능과 편의성이 모두 ...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 4. I/O 활용 I/O를 사용해서 회원 데이터를 관리하는 예제 4-1. 요구사항 1.회원 등록 | 2.회원 목록 조회 | 3.종료 선택: 1 ID 입력: id1 Name 입력: name1 Age 입력: 20 회원이 성공적으로 등록되었습니다. 1.회원 등록 | 2.회원 목...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 3. I/O 기본 2 3-1. 문자 다루기1 스트림의 모든 데이터는 byte 단위를 사용한다. byte가 아닌 문자를 스트림에 직접 전달할 수 없기 때문에, byte로 변환한 다음에 전달해야 한다. String을 byte로 변환할 때는 String.getBytes(C...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 2. I/O 기본 1 자바 프로세스가 메모리에 가진 데이터를 hello.dat 라는 디스크에 있는 파일에 저장하려면, 출력 스트림을 사용해 hello.dat파일로 메모리에 있는 데이터를 보내고 반대로 프로세스 외부에 있는 데이터를 자바 프로세스 안으로 가져오려면 입력 스...