Notice
Recent Posts
Recent Comments
Link
«   2025/09   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

coyojo10의 개발블로그!

Servlet 정리 2 본문

백엔드

Servlet 정리 2

coyojo 2022. 11. 30. 15:34

< 서블릿 등록> 
      - 서버가 요청을 분석해서 서블릿디렉토리에서 서블릿을 찾아서 실행할 수 있도록 요청별로 실행할 서블릿을 등록 
      - 설정파일에 등록(web.xml)
      - 실제 작업은 annotation으로 설정
      - web.xml파일은 xml형식의 파일이므로 태그로 작성하고 <작성규칙> 이 정해져 있기 때문에 정확하게 작성해야 한다.
        작성규칙이란? =>  dtd - xml안에서 정의하고 사용할 엘리먼트를 정의한 명세서(엘리먼트의 순서, 값의 타입...)
        
       1) 서블릿 클래스를 등록
           ==> 어떤 클래스를 사용해야 하는지 등록 : 무엇을????
           <servlet>
             <servlet-name> 서블릿명(alias)</servlet-name>
             <servlet-class> 서블릿의 실제 클래스명(패키지를 포함)</servlet-class>
           
           </servlet>
           
           ex) basic패키지에 작성한 FirstServlet을 first라는 이름의 서블릿 명으로 등록
               <servlet>
                 <servlet-name>first</servlet-name>
                 <servlet-class>basic.FirstServlet</servlet-class>
               </servlet>
           
           
           
       2) 서블릿 매핑
         ==> 등록된 서블릿을 어떻게 요청할 것인지 등록하는것 (어떤 url로 요청할 것인지)
         ==> 반드시 <servlet> 엘리먼트 다음에 위치해야 한다. 즉, <servlet>엘리먼트와 함께 한 쌍으로 정의해야 한다.
         ==> 위에서 등록한 서블릿을 어떻게 요청할 것인지 등록하는 엘리먼트
           <servlet-mapping>
               <servlet-name> 위에서 정의한 서블릿의 이름</servlet-name>
               <url-pattern>    요청할 서블릿의 path     </url-pattern>
                                         -------------------------
           </servlet-mapping>       |____ 반드시  / (슬래시) 나  . (점) 으로 시작해야 한다.
               
         
         
           ex)
             <servlet>
                 <servlet-name>first</servlet-name>
                 <servlet-class>basic.FirstServlet</servlet-class>
               </servlet>
           
            <servlet-mapping>  // first로 등록된 서블릿을 /first.sds로 요청했을때 실행하겠다는 의미
                <servlet-name>first</servlet-name>
                <url-pattern>/first.sds</url-pattern>              
            </servlet-mapping>
   

 

 

 

 

 

 

예시에서 servlet-mapping한 / first.sds 가 뜨는 모습!