Choi의 고유결계

JSP Servlet: MVC 패턴, Servelt,Container 란? 본문

Jsp,Servlet

JSP Servlet: MVC 패턴, Servelt,Container 란?

믿을수없는맛 2018. 7. 25. 16:18
반응형

MVC 패턴이란?

MVC는 Model, View, Controller의 약자로서 애플리케이션의 기능을
3가지로
구분한 개발 디자인 입니다.

Web에서 MVC 패턴이 적영된다면 3가지가 하는일

  • Model

    • Model은 데이터를 담당한다. 여기서 데이터란 주로 데이터베이스를 의미하는데요. 즉 데이터를 다루는 로직을 모델에 모아둬서 코드 관리의 편의성을 높일 수 있고, 향후 데이터베이스를 다른 타입으로 교체가 용이합니다.
  • View

    • 뷰란 화면상에 출력되는 내용을 의미합니다.

      View 안에서 UI와 관련된 코드를 작성하는 것이 바람직합니다.

  • Controller

    • 사용자의 URL을 받아서 해석하고 사용자가 원하는 요청사항을 파악하여 그 요청사항에 맞는 데이터를
      Model에 요구하게 되고, 받은 데이터를 View를 통해 다시 사용자에게 보여줍니다.

    • 컨트롤러라고하는 class 안에는 URL에 대응하는 로직 메소드들이 정의 되어있습니다.

      MVC의 실행 흐름

먼저 브라우저(Client)즉 사용자가 특정 URL로 서버에 접근하여 URL에따른 다른 정보들을 받고 싶어하는데, Controller는 사용자의 URL을 받아서
사용자가 원하는 요구사항을 파악하여 데이터를 담당하는 Model과 시각적인것들을 표현하는 View를 적절히 제어하여 결과를 다시 사용자에게 전달되는것이죠.


Servlet

“자바 서블릿(Java Servlet)은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 “서블릿”이라 불린다.”

라고 위키피디아에 정의되어있다.

  • Jsp, Servlet 둘의 차이점은

    서블릿은 JSP와 비슷한 점이 있지만, JSP가 HTML 문서 안에 Java 코드를 포함하고 있는 반면, 서블릿은 자바 코드 안에 HTML을 포함하고 있다는 차이점이 있다.

“서블릿의 역할은 위에서 말한 MVC의 컨트롤러를 생각하시면 될것 같아요!”


Web Containner

“웹 컨테이너(web container, 또는 서블릿 컨테이너)는 웹 서버의 컴포넌트 중 하나로 자바 서블릿과 상호작용한다. 웹 컨테이너는 서블릿의 생명주기를 관리하고, URL과 특정 서블릿을 맵핑하며 URL 요청이 올바른 접근 권한을 갖도록 보장한다.”

  • Jsp와 서블릿을 실행시킬 수 있는 소프트웨어를 웹 컨테이너 혹은 서블릿 컨테이너 라고 합니다.

  • 웹서버에서 Jsp를 요청하면 톰켓에서는 Jsp 파일을 서블릿으로 변환하여 컴파일을 수행하고, 서블릿의 수행결과를 웹 서버에서 전달합니다.

“한마디로 동적페이지의 해석 해석된 내용을 동작등을 할수있는것들을 말한다고 생각하시면 될것 같아요”

블로그 너무 안쓰다가 또 이렇게 공부한 내용 끄적여 보는데요 앞으로는 게으르지 않게 열심히 해야겠어요 내용의 이해안되는점이시나 궁금한점, 피드백등 있으면 댓글로 적어주세요!!

추후에 프론트컨트롤을 배우면서 mvc 패턴에 대해서 다시 짚고 넘어갈게요


반응형
Comments