サーブレットファイルの作成


サーブレットプロジェクトの優先パラメータ


web.xml方式


web.xml:サーブレットプロジェクトプリファレンスパラメータファイル
1. main > New > Directory

2. java > New > Package

3. org.example(Package) > Java Class

サーブレットファイルによるサーブレットクラスのプライマリ領域への追加
サーブレットクラスが開発したライブラリはpomです.xmlに追加されていない他の操作
すべてのサーブレットクラスはHTTPサーブレットを継承する必要があります

サーブレットクラスにはサービス関数が必要です
  • doGet、doPost overridingを使用

  • HelloServlet (main > java > org.example)
    public class HelloServlet extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            // ContentType 설정
            resp.setContentType("text/html;charset=UTF-8");
            // 문자 출력을 위한 객체 생성
            PrintWriter out = resp.getWriter();
            out.println("Hello, there?");
            out.close();
        }
    }
    すべてのサーブレットクラスが完了すると、Webはこのプロジェクトでこのサーブレットクラスを使用します.xmlファイルに登録する必要があります
    web.xml (main > webapp > WEB-INF)
    <web-app>
      <display-name>Archetype Created Web Application</display-name>
      <servlet>
        <servlet-name>hello-servlet</servlet-name>
        // 어디있는지 파일 명시
        <servlet-class>org.example.HelloServlet</servlet-class>
      </servlet>
      // URL 매핑을 위한 설정
      <servlet-mapping>
        <servlet-name>hello-servlet</servlet-name>
        <url-pattern>/HelloServlet</url-pattern>
      </servlet-mapping>
    </web-app>

    Annotation方式


    xeb.xmlファイルに登録されたWebマッピングを宣言で実現
    HelloServlet2 (main > java > org.example)
    @WebServlet("/HelloServlet2")
    public class HelloServlet2 extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            resp.setContentType("text/html;charset=UTF-8");
            PrintWriter out = resp.getWriter();
            out.println("Hi, there!!");
            out.close();
        }
    }