레이어드 아키텍처(Layered Architecture) 실습1
방명록 만들기 실습
- Spring JDBC를 이용한 DAO 작성
- Controller + Service + DAO
- 트랜잭션 처리
- Spring MVC에서 폼 값 입력받기
- Spring MVC에서 redirect하기
- Controller에서 jsp에게 전달한 값을 JSTL과 EL을 이용해 출력하기
방명록 요구사항 1/6
- 방명록 정보는 guestbook 테이블에 저장된다.
- id는 자동으로 입력된다.
- id, 이름, 내용, 등록일을 저장한다.
방명록 요구사항 2/6
방명록 요구사항 3/6
- 이름과 내용을 입력하고, 등록버튼을 누르면 /guestbook/write URL로 입력한 값을 전달하여 저장한다.
- 값이 저장된 이후에는 /guestbook/list로 리다이렉트 된다.
방명록 요구사항 4/6
- 입력한 한 건의 정보가 보여진다.
- 방명록 내용과 폼 사이의 숫자는 방명록 페이지 링크. 방명록 5건당 1페이지로 설정한다.
방명록 요구사항 5/6
- 방명록이 6건 입력되자 아래 페이지 수가 2건 보여진다.
- 1페이지를 누르면 /guestbook/list?start=0 을 요청하고, 2페이지를 누르면 /guestbook/list?start=5를 요청하게 된다.
- /guestbook/list는 /guestbook/list?start=0과 결과가 같다.
방명록 요구사항 6/6
- 방명록에 글을 쓰거나, 방명록의 글을 삭제할 때는 log 테이블에 클라이언트의 ip주소, 등록(삭제) 시간, 등록/삭제 (method 컬럼) 정보를 DB에 저장한다.
- 사용하는 테이블은 log이다.
- id는 자동으로 입력되도록 한다.
방명록 클래스 다이어그램
- 웹 레이어 설정 파일 : web.xml, WebMvcContextConfiguration.java
- Business, Repository 레이어 설정 파일 : ApplicationConfig.java DBConfig.java
먼저 스스로 만들어보자.