ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [WEB:Model2] Model2를 만들 때 알아두어야 할&주의사항
    비전공자 공부일기/:: WEB & Front-End 2019. 8. 13. 13:35

    2019. 08. 13 필기

     

     

     

    로그인 권한처리를 위한 되돌아보기

     

    Page Scope : JSP 문서의 pageContext 인스턴스(PageContext 클래스)를 이용하여 정보 공유 - 공유한 JSP 문서에서만 공유된 정보를 반환받아 사용

    Request Scope : JSP 문서의 request 인스턴스(HttpServletRequest 클래스)를 이용하여 정보 공유 - 공유한 JSP 문서와 제어권이 이동된 JSP 문서에서 공유된 정보를 반환받아 사용

    Session Scope : JSP 문서의 session 인스턴스(HttpSession 클래스)를 이용하여 정보 공유 - 컨텍스트의 모든 문서에서 공유된 정보를 반환받아 사용(클라이언트마다 다른 정보 공유하여 제공)

    Application Scope : JSP 문서의 application 인스턴스(ServletContext 클래스)를 이용하여 정보 공유 - 컨텍스트의 모든 문서에서 공유된 정보를 반환받아 사용(클라이언트마다 동일 정보 공유하여 제공)

     

     

     

    Model2로 웹페이지를 구성하기 위해 필요한 클래스(클래스명은 임의)

     

    Action : 모든 모델들이 상속받는 인터페이스. 메소드 작성규칙 제공

               >> execute(HttpServletRequest request, HttpServletResponse response) 메소드 제공

     

    ActionForward : 모든 모델들이 인스턴스를 생성하는 VO클래스. 문서이동에 대한 정보 제공

                         >> 두 가지 필드 선언이 필요하다.

                         >> boolean forward : 이동방식 / String path : 이동하려는 문서 또는 페이지의 주소

     

    Service : DAO의 메소드를 호출 >> DAO와는 달리 재활용이 가능해 유지보수 효율이 높아진다

     

    Servlet : 클라이언트의 모든 요청을 받는 단일 진입점

     

    Model : 요청처리 후 문서이동 >> Model1에서 JSP가 하던 역할

    ----- model1의 JSP문서에서는 이동경로의 주소를 상대경로로 적어주었지만, model2에서는 성격에 따라 절대경로의 jsp 문서 또는 페이지 url로 적어주어야 함 (ex. <%=request.getContextPath() %>/model_two/css/user.css)

     

     

     

    Model2 구현 때 주의사항

     

    - JSP 문서 내 href로 연결되는 이동주소는 URL 주소로 적어줄 것(ex. login.do)

    - CSS 등 link 시켜주어야 할 문서의 주소도 절대경로로 적어줄 것

    - 권한처리(관리자인지/일반사용자인지/로그아웃 상태인지 등) 잊지 말것

    - 모델 클래스 >> 오버라이딩 한 execute() 메소드 내부에 try-catch 문으로 오류처리

      >> "error.do"로 가도록 해 사용자에게 404, 500 등의 에러가 실제로 보이지 않도록 세련되게(ㅋㅋ) 처리

     

    댓글

coding wanee