#1 Homework - leehyuckgyu/helloMVC GitHub Wiki

Model

Customer

  • Bean이라 불리우는 객체로 Customer클래스를 정의한다.

  • 라이브러리를 추가하여 @getter, @setter 등 어노테이션을 사용하면 각 변수에 접근하는 함수를 따로 생성하지 않아도 된다.

View(JSP)

RegisterForm, LoginForm

  • 사용자(Browser)가 HTML로 작성된 JSP를 보고 Form Data를 작성하여 Request 한다.

RegisterSuccess, LoginSuccess, LoginFail

  • Tomcat(Container)은 Request에 대한 Response를 동적으로 생성하여 사용자에게 보여준다.

  • RegisterSuccess.JSP는 회원가입에 대한 결과를 보여주는데 JAVA코드 대신 Expression Language를 사용한다. (권장)

Controller(Business Logic)

Home

  • Index.jsp에서 Action Parameter를 넘겨 받아 요청한 Page로 Forwarding 한다.

DoRegister, DoLogin

  • Post method 방식을 사용하여 Request에 따른 Business Logic, CustomerService를 수행한다.

  • Tomcat은 Cutomer객체를 생성하고 결과 값을 Bean에 저장하여 View를 통해 반환한다.

CustomerService

  • DoLogin, DoRegister 에서 접근해야 하므로 하나의 객체를 생성하여 공유한다. (외부에서는 Static Instance로 접근해야 한다.)

  • 일반적인 경우라면 사용자의 Login 정보를 DB에서 조회하여야 하지만 Map을 사용하여 Customer 정보를 저장하고 조회한다.

  • Customer Login Method 는 DoLogin에서 받은 ID와 Password를 확인하여 Map에 존재하는지 확인한다.