JSP

[JSP] JSP에서 지시어와 스트립트 요소들에 대해 알아보기

joheamin 2025. 4. 3. 23:45
HTML에는 지시어와 세가지의 스트립트 요소가 있다.

 

우선 지시어 부터 알아보겠다.

 

 

🔷 지시어

지시어는 JSP 페이지를 자바 코드로 변환하는데 필요한 정보를 JSP엔진에 알려준다.

EX ) 스크립트 언어 , 인코딩 방식

 

🔍 지시어 구문

<%@ 지시어 종류 속성 = "값" %>

 

🔹지시어의 종류

 

page 지시어

 

JSP 페이지에 대한 정보를 설정한다.  문서의
타입 , 스크립트 언어 , 에러처리 등등 여러 설정을 할 수 있다.

<%@ page
		info="이건 jsp 파일입니다."	               //파일 설명
		language="java" 						    //스크립트 언어는 자바
		contentType="text/html; charset=UTF-8"      //MIME 타입은 text/html
		pageEncoding="UTF-8"				        //인코딩 방식은 UTF-8
		import="java.util.List"	                    //List 라이브러리 포함
		errorPage="error.jsp"	                    //에러가 발생할 경우 "error.jsp" 파일 호출
		%>

 

 

 

 

 

include 지시어

 

필요한 파일을 현재 파일에 포함 시킬수 있다. 

포함 시킬 파일
//파일명 : includeFile.jsp
<% 	
	//변수 생성
	String include = "포함됌";
%>


원본 파일

 <%@ include file="includeFile.jsp" %>
 .
 .
 .
 <body>
 	//include 해온 파일에 변수 사용
	<p><%= include %></p>
</body>

 

❗ 단 포함 시킬 페이지에도 page 지시어를 반드시 설정해 주어야한다.

 

 

 

taglib 지시어

 

자바 클래스에서 메서드를 호출하거나 라이브러리를 사용하기 위한 지시어

 

 

 

 

 

 

 


🔷 스크립트 요소

스크립트 요소에는 세가지가 있다.

 

 

1️⃣ 선언부

스크립 툴릿이나 표현식에서 사용할 멤버 변수멤버 메서드 선언 

 

서블릿 변환 시 메서드 외부에 기술 된다.

---지시어---

<%! 
	//멤버 변수
	String name = "홍길동";

	//멤버 메서드
	public void printName(){
		System.out.println(name);
	} 
%>

--- <html> ---

 

 

2️⃣ 스크립틀릿

 

JSP 페이지가 요청 받을 때 실행되어야하는 자바코드를 작성하는 영역

서블릿으로 변환 시 메서드 내부에 기술된다. 

 

이때 자바에서는 메서드 내부에 또 다른 메서드를 작성하는것이 불가능하다.

 

따라서 스크립틀릿에서는 선언부에 선언된 메서드 호출만 가능하며 

메서드를 선언하는 것이 불가능하다.

 

// 선언부 
<%! 
	//멤버 변수
	String name = "홍길동";

	//멤버 메서드
	public String printName(){
		return name;
	} 
%>

//스크립틀릿
<body>
	<% 
		String name2 = printName();
	%>
</body>

👉 선언부에 생성된 메서드를 스크립틀릿에서 호출하여 반환값을 저장

 

 

3️⃣ 표현식

 

단순히 변수의 값을 출력하기 위해 사용된다.

 

스크립틀릿에서도 out.println을 통해 출력할 수 있지만

조금 더 단순한 방법으로 출력하기 위해 사용된다.

<body>
	//스크립틀릿
    <% 
		String name2 = printName();
	%>
	
    //표현식
	<p><%=name2 %></p>
</body>

 👉 스크립틀릿에서 메서드를 호출하여 저장된 변수를 표현식에서 출력