728x90
온랑니 쇼핑몰 같은 경우 대부분 상품 조회, 주문, 회원 관리 등 여러 기능으로 이루어져 있다. 만약 이런 기능을 하나의 서블릿으로 만들어서 제공한다면 소스가 복잡해져 관리가 힘들어질 것이다. 따라서 각 기능에 대한 서블릿을 따로 만들어서 제공하게 된다.
1. 패키지 선택 마우스 오른쪽 클릭 -> New -> Class

2. 클래스 이름 작성 후 Finish

3. 아래와 같이 클래스가 생성된 것을 확인 가능

4. SecondServlet.java 클래스를 열어서 아래와 같이 코드 작성

package sec01.ex01;
import java.io.IOException;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
public class SecondServlet extends HttpServlet {
@Override
public void init() throws ServletException
{
System.out.println("init 메서드 호출>>>>");
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
System.out.println("doGet 메서드 호출>>>>");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
System.out.println("doPost 메서드 호출>>>>");
}
@Override
public void destroy()
{
System.out.println("destroy 메서드 호출>>>>");
}
}
5. web.xml 파일을 열어서 아래와 같이 코드 작성 (매핑)
여러개의 서블릿을 매핑할 때는 <servlet> 태그와 <servlet-mapping> 태그를 각각 분리하여 작성해야 함에 유의하자.

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:web="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd http://xmlns.jcp.org/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="5.0">
<servlet>
<servlet-name>aaa</servlet-name>
<servlet-class>sec01.ex01.FirstServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>bbb</servlet-name>
<servlet-class>sec01.ex01.SecondServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>aaa</servlet-name>
<url-pattern>/first</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>bbb</servlet-name>
<url-pattern>/second</url-pattern>
</servlet-mapping>
</web-app>
6. 서버 작동

7. 웹 홈페이지 주소창에 ip주소:포트번호/프로젝트이름/매핑한이름 작성 후 검색

8. 아래와 같이 콘솔창에 각 메서드가 호출되어 메시지를 출력하는 모습 확인이 가능하다.

728x90
'백엔드 > 웹개발' 카테고리의 다른 글
[이클립스/웹개발] 애너테이션을 이용한 서블릿 매핑 (0) | 2022.02.18 |
---|---|
[웹개발] 서블릿이란? (0) | 2022.02.18 |
[이클립스/웹개발] 서블릿 동작과정 실습 (0) | 2022.02.18 |
[서버구축] 파일질라 FTP서버구축 (0) | 2022.02.17 |
[서버구축] tomcat폴더를 활용한 Window10 FTP서버구축 (0) | 2022.02.16 |