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
- 서블릿 클래스라는 사실을 빠르게 인식 할 수 있다.
- 어떤 요청을 할 떄 해당 서블릿이 실행되어야하는지를 알 수 있다.
- @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 |