본문 바로가기

웹/JSP

[JAVA] <Servlet> 기초

Servlet이란

  • Server + Applet 의 합성어이다.
  • Servlet은 클래스이다.
  • Servlet은 not POJO(Plain Old Java Object)인 클래스를 의미한다.
    • POJO 란 오래된 방식의 간단한 자바 오브젝트이다.
    • POJO 클래스 종류
      • String, Scanner, Random, Math...
      • 클래스
    • not POJO 종류
      • 서블릿, 리스너, 필터
  • Servlet 은 JAVA 코드 안에서 html을 작성이 불편했기에 html 안에서 JAVA 코드를 사용하기 위해 탄생했다.
    • 사실 Servlet은 JSP와 같은 것이다.
    • JSP 파일을 컴파일하면 Servlet 파일이 된다.

Servlet 사용

  • 어노테이션(@)이 필요하다.
    • @WebServlet
      • 서블릿 클래스라는 사실을 빠르게 인식 할 수 있다.
      • 어떤 요청을 할 떄 해당 서블릿이 실행되어야하는지를 알 수 있다.
package test;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

// @ 어노테이션이 필요함
// @WebServlet
//  1) 서블릿 클래스라는 사실을 빠르게 인식할 수 있음
//  2) 어떤 요청을 할때 해당 서블릿이 실행되어야하는지를 알수있음
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {

    private static final long serialVersionUID = 1L;

      // 웹에서는 기본 생성자가 필수!
    public TestServlet() {

         super();

        // TODO Auto-generated constructor stub

    }

    // GET 요청일때 수행하는 메서드
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        response.setContentType("text/html;charset=UTF-8");

        PrintWriter out=response.getWriter();

        out.println("<h1>서블릿을 직접 이용해보겠습니다! :D</h1>");

    }

    // POST 요청일때 수행하는 메서드
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        // TODO Auto-generated method stub

        doGet(request, response);

    }

}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>세 번째 실습</title>
</head>
<body>

    <form method="POST" action="/day028/CalcServlet">

        <input type="text" name="num1">

        <select name="op">

            <option>+</option>

            <option>-</option>

        </select>

        <input type="text" name="num2">

        <input type="submit" value="계산하기">

    </form>

</body>
</html>

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

[JSP] <JSP> Bean  (0) 2024.01.04
[JSP] <JSP> request  (0) 2024.01.04
[JSP] <JavaScript> 이벤트 등록  (0) 2024.01.03
[JSP] <JavaScript> 기초  (2) 2024.01.03
[웹] <JSP> 자주 사용하는 요소  (0) 2023.12.27