JSP 대 Servlet

김규원·2024년 1월 22일

24.01: 실전! JSP(完)

목록 보기
1/13
post-thumbnail

인프런 강의 <<실전 JSP(renew ver.) 수강 후 공부를 위해 정리한 글입니다.

JSP 와 Servlet

jspservlet같은 역할을 하는 다른 도구

JSP와 servlet 모두 dynamic web page(동적 웹페이지)를 만듦.

JSP로 VIEW부분을
서블릿으로 Controll 부분을 만듦.

servlet(서블릿)은 tomcat이 이해할 수 있는 순수 java 코드로만 작성 가능. 즉, 웹페이지를 만들 때 자바 코드 안에 HTML을 포함함으로써 웹 페이지를 동적으로 생성함.

그러나 JSP의 경우 HTML 안에 java 코드를 포함함. tomcat이 이해할 수 있는 순수 java 코드로 만들어져있지 않기에 servlet으로 변환이 필요

Servlet(서블릿)

결론적으로, servlet의 경우
자바 코드 안에 html을 포함하였기에 코드 작성이 귀찮음

예시

/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	// TODO Auto-generated method stub
	PrintWriter out = response.getWriter();
	out.print("");
	out.print("");
	out.print("");
	out.print("");
	out.print("<p>Hello Servlet!!");
	out.print("");
	out.print("");
	}

즉, 밑의 html 구문을 표현하기 위해 html 태그로 "문자열" 처리해야하는 불편함 발생

"<p>Hello Servlet!!"

JSP(Java Server Pages)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<p>Hello JSP World!</p>
</body>
</html>

그러나 jsp를 사용할 경우 위처럼 html구문 내 java를 사용하여 코드 작성 가능. --> 편리함

위에서 jsp는 나중에 서블릿으로 변환이 필요하다고 언급했었는데, 밑의 그림을 보며 이해 가능. 실제로 jsp 파일 작성 후 로컬 폴더를 확인하면 jsp, java, class 파일이 전부 생성되어 있음.

출처 https://velog.io/@effirin/Servlet%EA%B3%BC-JSP%EC%97%90-%EB%8C%80%ED%95%B4

profile
행복한 하루 보내세요

0개의 댓글