1. 程式人生 > >web---JSP中動態include與靜態include的區別?

web---JSP中動態include與靜態include的區別?

1. 動態include

 <jsp:include page="目標jsp">

它的原理是使用了 request.getRequestDispatcher(目標jsp).include(request,response) 來實現頁面包含,其本質是將 源jsp 和 目標jsp 分別解析為兩個servlet,這兩個servlet生成的動態內容會合併為一個響應返回給瀏覽器。因為是不同的頁面,因此不能用page作用域傳值。它能夠包含虛擬路徑如一個servlet。

2. 靜態include

<%@ include file="目標jsp" %>

它的本質是將源jsp和目標jsp的原始碼合併在一起,由jsp引擎解析為一個servlet,將其生成的動態內容作為響應返回給瀏覽器。因為是同一個servlet,可以利用page作用域傳值。它不能包含虛擬路徑地址如servlet。