본문 바로가기

학원/복기

[JSP] JSP란?

JSP(Java Server Page)

 

JSP(Java Server Pages)는 서버 측에서 동적인 웹 페이지를 생성하기 위해 사용되는 웹 개발 기술이다. JSP는 HTML에 Java 코드를 삽입하여 웹 애플리케이션을 구성하는 데 사용된다. JSP를 이용하면 서블릿보다 쉽게 웹프로그램을 작성할 수 있다.

JSP는 스크립트 요소(Script Element), 지시어(Directive), 표준 액션 태그(Standard Action Tag) 등의 구성요소로 이루어져 있다.

 

 

HTML 주석과 JSP 주석

HTML 주석 : 주석문이 클라이언트에게 전달된다. - 소스보기 가능 : 주로 웹디자이너가 많이 사용한다.

JSP 주석 : 주석문이 클라이언트에게 전달되지 않는다. -소스보기 불가능 : 주로 웹프로그래머가 많이 사용한다.

<!-- HTML 주석 -->
<%-- JSP 주석 --%>

 

클라이언트가 JSP 문서를 요청하면

 

1. WAS 프로그램은 JSP 문서를 해석하여 JSP 문서에 대한 서블릿 클래스를 생성하고

2. 컴파일하여 객체를 생성한 후

3. 요청 처리 메소드를 호출해 클라이언트 요청에 대한 처리와 실행결과를 저장한 파일을 생성하여

4. 클라이언트에게 전달하여 응답한다. 

 

JSP 문서에 대한 서블릿 클래스가 이미 생성되어 있는 경우에는 객체를 이용하여 요청 처리 메소드를 요청한다.

JSP 문서가 변경된 후 클라이언트에 의해 요청되면 JSP 문서를 해석하여 서블릿 클래스를 생성한다.

 

출처 : https://devlog-wjdrbs96.tistory.com/152

JSP 동작 과정

  • 브라우저가 웹 서버에게 JSP에 대한 요청 정보를 전달한다.
  • 브라우저가 요청한 JSP가 최초로 요청했을 경우만 JSP로 작성된 코드가 서블릿 코드로 변환됨(java파일 생성)
  • 서블릿 코드를 컴파일해서 실행가능한 bytecode로 변환한다(class파일 생성)
  • 서블릿이 실행되어 요청을 처리하고 응답 정보를 생성한다.

출처 : https://devlog-wjdrbs96.tistory.com/152

 

 

JSP는 자바 명령을 작성할 수 있다.

<%
	//자바 명령 작성
	//자바 명령 작성
    //...
%>

 


 

예제) 1초마다 페이지가 자동으로 새로고침되어 현재 시간이 업데이트되는 JSP 페이지 생성 

 

<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	//Java 명령 작성
	Date now=new Date();
	SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy년 MM월 dd일 HH시 mm분 ss초");
	String displayNow=dateFormat.format(now);
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSP</title>
<style>
#displayDiv {
	width: 600px;
	margin: 0 auto;
	padding: 30px 0;
	font-size: 2em;
	font-weight: bold;
	text-align: center;
	border: 2px solid black;
}
</style>
</head>
<body> 
	<h1>Hello, JSP!</h1>
	<hr>
	<div id="displayDiv"><%=displayNow %></div>
	<script>
	setInterval(function() {
		location.reload();
	}, 1000);
	</script>
</body>
</html>