[JSP] WEB.XML은 무엇일까?

반응형

Web.xml은 무엇일까?

 

목차

     

     

      WEB.XML은 무엇일까?

     배포 서술자 (Deployment 부르는데, jsp나 Servlet을 위한 설정 파일을 담당하는 역할입니다. 브라우저가 실행될 때, 반드시 거쳐가는 특징을 지니고 있어 설정 파일을 담당할 수 있습니다.

     

    만약 MVC패턴을 이해하기 위해서는 Web.xml을 알아야 하며, JavaServlet에 접근하기 위해서는 Web.xml의 도움이 필요로 할 정도로 많은 사랑을 받고 있습니다. 그래서 거의 90% 확률로 Web.xml은 자리 잡고 있으며, 2개 이상의 Web.xml은 사용할 수 없습니다.

     

     

     

     

     

      WEB.XML은 어떻게 만드는가?

    1. 프로젝트 생성 시, 자동 생성하기

    web.xml
    여기서 Finish를 누르시면 안됩니다.
    web.xml

     

     Dynamic Web Project에서 Next를 누른 후, 가장 마지막 단계에서 Generate web.xml deplyment descriptor을 체크해주면 됩니다.

     

    web.xml 만드는법

    체크 후 생성 시, 정상적으로 web.xml이 것을 확인할 수 있습니다.

     

     

    2. tomcat에서 가져오기

    tomcat의 web.xml

    혹은 Eclipse안의 Servers - Tomcat - web.xml이 들어 있습니다.

    이를 Ctrl+c =>  Ctrl+v 복사 붙여놓기로 진행해도 되오나, 내용물이 상당히 지저분한 단점이 있습니다.

     

     

     

     

     

      사용하는 방법

    web.xml의 기초
    web.xml의 설정

     가장 기초적인 방식입니다.

    Eclipse 기준으로 Ctrl+Space(자동 생성)를 할 경우 Servlet과 Servlet-mapping이 나타납니다.

     

    이 둘은 n극과 s극 같은 짝꿍입니다.

    servlet-name으로 서로의 짝을 구분 지을 수 있으며, url-pattern은 방아쇠 역할을 합니다.

    방아쇠가 당겨진 servlet은 servlet - class에 영향을 끼치게 됩니다.

     

     

    * (Asterisk)
    컴퓨터 언어에서는 '전체'를 의미합니다.

    기호 의미
    * 전체 지정
    a* 맨 앞글자가 a로 시작한 전체 지정
    *a 맨 뒷글자가 a로 끝나는 전체 지정

     

     

    Servlet 생성

    프로젝트를 누른 후, 실행을 해보았습니다.

    당연하겠지만 프로젝트의 실행이므로 아무런 반응이 없습니다.

     

     

    하지만 브라우저가 실행될 때 반드시 거쳐가야 하는 곳, Web.xml의 영향으로 인해 Console창에서는 반응이 온 것을 확인할 수 있습니다.

     

    만약 a링크, submit을 통해 작동한다면 404 Not Found Error가 발생하면서 Console의 반응을 확인할 수 있습니다.

     

     

     

     

     

      마무리

    이해를 쉽게 도와드리기 위하여, 간단하게 WEB-INF에 대해 설명하게 되었습니다.

     

    MVC의 핵심이 될 수 있습니다. asterlisk가 아닌, '*. do' , '*. me'를 통해 Servlet 구분이 가능하며 request값이 페이지 이동 중 한글 깨짐 현상을 방지할 수도 있습니다.

     

    web.xml은 반드시 거쳐야 하는 경로라는 특징을 살려 좀 더 멋진 코딩을 만들 수 있게 도와줍니다.

    반응형

    'Web > JSP' 카테고리의 다른 글

    [JSP] Servlet이란?  (0) 2021.05.17
    [JSP] 절대경로와 상대경로  (0) 2021.05.14
    JSTL, JSP를 사용하는 사람이라면 알아야 할 것  (1) 2021.05.02
    [JSP] JSP 빈즈  (0) 2020.08.28
    [JSP] Bean  (0) 2020.08.26

    댓글

    Designed by JB FACTORY