[Comparison] include 지시어와 include 액션원소


include 지시어와 include 액션원소


1. include 지시어 <%@ include file="~"%>

include 지시어는 다른 파일의 내용을 현재 위치에 삽입한 후 JSP 파일을 자바 파일로 변환하고 컴파일 하는 방식이다. 즉, include 지시어는 포함시키려는 파일의 코드 자체가 현재 페이지에 포함되어서 하나의 서블릿으로 컴파일된다. include 지시어를 사용하면, JSP 파일을 자바 파일로 변환하기 전에 include 디렉티브에서 지정한 파일의 내용을 해당 위치에 삽입하고, 그 결과로 생긴 자바 파일을 컴파일하게 된다.


2. include 액션 원소 <jsp:include ~ />

include 액션 원소는 다른 JSP로 흐름을 이동시켜 그 결과물을 현재 위치에 포함시키는 방식이다.

일반적으로 include 액션 원소는 레이아웃의 한 구성 요소를 모듈화 하기 위해 사용된다. include 액션 원소는 포함시키려는 페이지의 실행 결과만 가져오기 때문에 실제 서블릿으로 변환될때 에는 따로 작성된다.


따라서, 변수를 공유할 때에는 include 지시어를 사용해야 한다. include 액션 원소는 파일이 따로 작성되기 때문에 변수를 공유할 수 없다.

그러나 include 지시어와는 달리 동적인 변화가 많은 페이지는 include 액션 원소를 사용하는 것이 바람직하다.



비교항목 

include 지시어

include 액션 원소 

 처리시간

 요청 시간에 처리

 JSP 파일을 자바 소스로 변환할 때 처리 

기능 

 별도의 파일로 요청 처리 흐름을 이동

 현재 파일에 삽입시킴 

데이터 전달 방법 

 request 기본 객체나 <jsp:param>을 이용한 파라미터 전달 

 페이지 내의 변수를 선언한 후, 변수에 값 저장 

용도 

 화면의 레이아웃의 일부분을 모듈화 할 때 주로 사용된다. 

 다수의 JSP 페이지에서 공통으로 사용되는 변  수를 지정하는 코드나 저작권과 같은 문장을 포  함한다.