2020. 7. 30. 19:56ㆍSpring/Spring
1. Model 아키텍처
1) Model 1 아키텍처
JSP와 JavaBeans만 사용하여 웹을 개발하는 구조이다. JavaBeans는 Model(VO, DAO 클래스) 역할을 수행한다. 반면 JSP는 Model을 이용하여 검색한 데이터를 화면에 출력해주는 마크업(HTML, CSS)을 사용한다. JSP에서 Controller와 View의 역할을 동시에 수행하기 때문에 구분이 되어 있지 않아 유지보수가 어렵다.
2) Model 2 아키텍처
Model 2는 MVC 아키텍처이다. Model, View, Controller로 구분하여 Model 1의 단점을 보완한다.
2. Model 1 구현
1) 로그인 화면
/src/main/webapp/
login.jsp
2) 서버 설정
URL 변경을 위한 서버 설정을 한다.
3) 로그인 인증 처리
/src/main/webapp/
login_proc.jsp
※ 리다이렉트는 브라우저로 응답 메시지를 보내고 다시 서버로 재요청하는 방식이라면, 포워드는 RequestDispatcher를 이용하여 응답으로 사용할 JSP 화면으로 넘겨서 포워드된 화면이 클라이언트에게 전송되는 방식이다. 한번의 요청과 응답으로 처리되기 때문에 속도가 빠르며 URL 변경이 없다.
4) 글 목록 화면
로그인 성공 후 이동하는 글 목록 화면과 기능을 구현한다. 글 목록의 제목을 선택 시 getBoard.jsp로 넘어가 글 상세 화면으로 이동하도록 한다.
/src/main/webapp/
getBoardList.jsp
5) 글 상세 화면
글 목록 화면에서 선택한 글을 상세 조회하는 화면을 구현한다.
/src/main/webapp/
getBoard.jsp
구현 화면
6) 글 등록 화면
/src/main/webapp/
insertBoard.jsp
/src/main/webapp/
insertBoard_proc.jsp
7) 글 수정 화면
글 수정 화면은 글 상세 화면과 동일하기 때문에 <input> 태그를 추가하여 수정할 게시글 번호 정보도 같이 전달 할 수 있도록 설정한다. HIDDEN으로 설정하여 화면에는 안보이지만 수정 시 게시글 정보도 같이 전달 되도록 한다.
/src/main/webapp/
getBoard.jsp
/src/main/webapp/
updateBoard_proc.jsp
8) 글 삭제 화면
삭제 시 삭제할 게시글 번호를 알려주기 위해 파라미터 정보를 추가한다.
/src/main/webapp/
getBoard.jsp
/src/main/webapp/
deleteBoard_proc.jsp
9) 로그아웃 화면
세션 작업 처리와 메인 화면으로 이동하도록 한다.
/src/main/webapp/
logout_proc.jsp
[참고] 스프링 퀵 스타트
'Spring > Spring' 카테고리의 다른 글
[Spring] MVC 구조 (1) (0) | 2020.08.02 |
---|---|
[Spring] Model 아키텍처 (2) (0) | 2020.07.31 |
[Spring] 트랜잭션 (0) | 2020.07.30 |
[Spring] JdbcTemplate (0) | 2020.07.30 |