Web/JSP

[JSP] Servlet 구현하여 화면에 띄우기

기록하는 개발 2023. 9. 19. 21:00

Servlet을 구현하기 위해서는 HttpServlet라는 추상 클래스를 상속받아야 합니다. Servlet을 구현하는 방법에 대해서 알아보겠습니다.

 

지난 시간에 Tomcat 서버 연결에 이어지는 내용이니 못 보신 분들은 아래 링크에서 확인할 수 있습니다.

https://recordevelop.tistory.com/entry/JSP-%ED%86%B0%EC%BA%A3Tomcat-%EC%84%A4%EC%B9%98-%EC%9D%B4%ED%81%B4%EB%A6%BD%EC%8A%A4%EC%97%90%EC%84%9C-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0

 

1. Dynamic Web Project 생성

Dynamic Web Project를 생성합니다.

Project name을 설정합니다. 저는 Day2라고 하겠습니다.

webapp 폴더에서 New - JSP File을 선택한 후, Hello.jsp 로 생성합니다.

Hello.jsp 파일이 성공적으로 생성되었습니다.

 

2. Hello JSP 출력하기

Hello.jsp 파일을 열어보면

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
</body>
</html>

다음과 같이 HTML 태그로 이루어져있습니다.

 

<body>
	Hello JSP
</body>

body 태그에 Hello JSP를 넣어봅시다.

 

성공적으로 실행이 된 것을 볼 수 있습니다.

 

3. Calendar 예제

Calendar.getInstance()를 활용하여 Calendar 객체를 불러오는 예제를 실행해 보겠습니다.

 

import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import java.io.*;
import java.util.Calendar;

public class ServletTest extends HttpServlet {
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
		response.setContentType("text/html");
		response.setCharacterEncoding("euc-kr");
		
		Calendar c = Calendar.getInstance();
		int hour = c.get(Calendar.HOUR_OF_DAY);
		int minute = c.get(Calendar.MINUTE);
		int second = c.get(Calendar.SECOND);
		
		PrintWriter out = response.getWriter();
		out.write("<HTML><HEAD><TITLE>ServletTest</TITLE></HEAD>");
		out.write("<BODY><H1>");
		out.write("현재시각은 ");
		out.write(Integer.toString(hour));
		out.write("시 ");
		out.write(Integer.toString(minute));
		out.write("분 ");
		out.write(Integer.toString(second));
		out.write("초입니다.");
		out.write("<H1><BODY><HTML>");
		out.close();
	}
}

현재 시각을 불러오는 예제입니다. 실행을 하면 콘솔에서 서버가 실행됩니다.

Tomcat 서버가 실행된 것을 Console 창에서 확인할 수 있고

 

 

현재 시각이 성공적으로 나오는 것을 볼 수 있습니다.

 

이번에는 jsp 파일을 webapp 폴더에 생성하여 실행해 보겠습니다.

다음과 같이 JspTest.jsp로 생성하면 됩니다.

 

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<%@page import = "java.util.Calendar"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%
Calendar c = Calendar.getInstance();
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND);
%>
<meta http-equiv="Content-Type" context="text/html"; charset="EUC-KR">
<title>Servlet Test</title>
</head>
<body>
<h1>현재 시간은 <%=hour %>시 <%=minute %>분 <%=second %>초 입니다.</h1>
</body>
</html>

이렇게 작성하고 실행을 합니다.

 

성공적으로 출력이 됐습니다.