본문 바로가기

하루정리

2022.08.29 include file / include page

include file / include page

 

 

include file :

정적인  include(포함) 지시문 

파일 안에 있는 것들을 그대로 옮겨서 가져옴 - 선언 되어 있는 변수까지  사용가능

 

ex) <%@include file ="jsp/common/session.jsp" %>

*정적이란 말에 모든 의미가 있음 

jsp 파일이 java 파일로 수정 전에  session.jsp 파일의 모든 내용이 부모의 jsp로 include(포함) 된다

그 후 부모의 jsp는 java -> class파일 -> html 파일 -> 웹브라우저로 랜더링

따라서 session.jsp 파일 안에서 전역변수로 strung A = "Hello Worle" 라고 선언 했다면 session.jsp를

사용하는 부모 jsp에서는 서블릿 테그(<%%>) 에서 컴파일(데이터 삽입) 에러 없이 바로 A변수를 사용

 

*단점 : 부모 페이지에 선언한 include가 많을 경우 include를 전부 추적해야 해서 유지보수가 어려워짐

 

 

 

 include page : 

동적인 include(포함) 지시문

 

ex) <jsp:include page = "jsp/common/apper menu.jsp" flush ="true"></jsp:include>

*동적이란 단어에 모든 의미가 함축

upperMenu.jsp는 부모 jsp가 java - > class -> html 문서로 실행될 시점에 삽입 후 웹브라우저로 랜더링 된다.

즉 정적 include처럼 uppermenu.jsp안에서 서브릿 태그를 작성하고 전역 변수로 만든 뒤 부모 jsp에서 사용할 수 없다. 

 

*단점 : 

부모 페이지에서 include 한 파일에서 선언한 변수 사용 시 

<jsp:parm name = "userName" value = "<%userName>"과 같이 부모 페이지에서 지정해주어야 함. 

동적 jsp는 매번 컴파일되기 대문에 성능상의 문제를 야기시킬 수 있다.