a.jsp에 import 되어있는 b.jsp를 수정하여도 a.jsp를 불러와도 반영되지 않아 해당 문제로 시간이 좀 걸렸다.

문제로는 동적 바인딩으로 import 되어 있어서였다.

해당 문제로 정적 바인딩과 동적 바인딩에 대해 알아 보았다.

 

우선 바인딩이란 무엇인가 ?

 

 

정적 바인딩

사용할 시점 : 컴파일 시점에 클래스 로드

실행 이전에 값이 확정되면 정적 바인딩이라고 한다.

컴파일 타임에 호출될 함수가 결정 되는 것으로, 함수는 기본적으로 정적 바인딩 된다

 

<%@ page import="sys_top.jsp" %>

정적으로 해당 a.jsp를 수정하지 않고 sys_top.jsp만 수정할 경우 수정한 내용이 반영되지 않는다

반영되게 하려면 a.jsp도 다시 컴파일을 해야 반영된다.

 

동적 바인딩

사용할 시점 : 런타임 시점에 클래스 로드

실행 이 후에 값이 확정되면 동적 바인딩이라고 한다

런타임에 호츨될 함수가 결정되는 것

 

<jsp:include file page=" sys_top .jsp" flush="true">

flush="true"일 겨우 강제로 컴파일하여 sys_top.jsp만 수정하여도 a.jsp가 바로 컴파일 되면서 반영됨

유연하게 변경된다는 장점이 있지만,

단점으로는 sys_top.jsp만 따로 컴파일이 돌게 되는 것으로 import를 해당 파일에 다 따로 선언해줘야한다.

+ Recent posts