본문 바로가기

Spring

[Spring][Project: 쇼핑몰 웹사이트][2.0] 프로젝트 흐름 / MVC 흐름 잡고가기

일단 여차저차 폴더도 만들고 클래스도 만들고 해서 화면구성도 하고 있지만, 확실하게 흐름을 알고 넘어가야 할 것 같아서 남겨보는 POST다.

너무 기초적인 내용이라서 공부용으로 내가 이해하려고 끄적여 보는거라 스킵해도 OK


그림1-1

 

일단 기본 흐름은 [그림1-1]과 같다.

 

하지만 우리는 MyBatis를 사용하기로 했다.

MyBatisMapper 인터페이스를 제공한다, 그래서 DAO 대신 Mapper를 사용했다.

참고로 MyBatis는 java코드와 SQL문을 분리해서 편리하게 관리하도록 해준다, 그리고 mapper를 사용하면 DAO를 일일이 만들지 않고 좀 더 편하게 개발할 수 있다고 한다.

 

SQL문은 *.xml 형식으로 저장하는데, [MemberMapper.xml]이 이에 해당한다.

 

조금 더 자세한 흐름을 보자면 아래와 같은 [그림1-2] 이지 않을까 생각한다.

그림1-2

1) 사용자가 URL로 접근하여 정보를 요청 (예: 회원가입, 로그인, 글 작성 등등)

2) Controller가 요청 정보를 받아서 Service를 호출

3) Service에서 Mapper를 호출

4) Mapper안에 xml파일에 요청된 정보를 처리하는 SQL문이 있음. 이걸로 DB 접근

5) SQL문으로 DB 결과값을 Controller까지 return

6) Controller에서 데이터를 View로 전달

7) View에서 화면만들어서 최종적으로 사용자에게 보여줌


앞POST에서 만든 파일들을 예로 자세히 살펴보자.

[메인 페이지]

그림2-1

ㄴ> java 파일을 보면 service호출하는 부분이 없기 때문에 바로 view로 넘어가게됨

그림2-2

 

[회원가입 페이지]

그림3-1

  • Client가 요청

그림3-2

  • Controller가 받아서 Service 호출

그림3-3

  • Service가 받아서 Mapper 호출

그림3-4

  • Mapper가 받아서 DB 접근

그림3-5

  • 결과값을 -> Service로 -> Controller로 반환

그림3-6


오케이 좀 머리속이 정리된 것 같다

계속 킵꼬잉~

 

안뇽~~~ :)