대규모 시스템으로 설계된 게시판에 사용된 Spring 문법과 요소 기술 - Spring
대규모 시스템으로 설계된 게시판에 사용된 Spring 문법과 요소 기술 - Spring 1. RestClient를 사용해 서버에 요청/응답 받고 서버의 Controller에서 요청 파라메터를 처리하는 방법 1-1. RestClient 스프링은 REST 요청을 보내기 위해 3가지 방법을 지원한다. RestClient : API 동기 요청 ...
대규모 시스템으로 설계된 게시판에 사용된 Spring 문법과 요소 기술 - Spring 1. RestClient를 사용해 서버에 요청/응답 받고 서버의 Controller에서 요청 파라메터를 처리하는 방법 1-1. RestClient 스프링은 REST 요청을 보내기 위해 3가지 방법을 지원한다. RestClient : API 동기 요청 ...
대규모 시스템으로 설계된 게시판에 사용된 Spring 문법과 요소 기술 - Tranaction 1. 트랜잭션 경계 설정 트랜잭션의 시작 선언(setAutoCommiot(false))하고 트랜잭션을 종료하는 하는 작업(commit(), rollback())을 트랜잭션 경계 설정이라 한다. transaction 경계 설정은 Connection을 열고 ...
강의 : 김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션 12. HTTP 서버 활용 - 회원 관리 서비스 회원의 속성은 ID, Name, Age를 가진다. 회원을 등록하고 등록한 회원의 목록을 조회할 수 있어야 한다. 기존에 구현한 HTTPServer를 재활용해 이전에 콘솔로 개발했던 기능을 웹으로 구현한다. 1.회원 등록 |...
강의 : 김영한의 실전 자바 - 고급 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는 성능과 편의성이 모두 ...