2013-03-17 173 views

回答

1

簡短的回答是否定的。

除非JSP包含另一個JSP,否則我不相信這是可能的。允許JSP重新編譯並立即生效的部分原因是,每個JSP servlet類都有它自己的類加載器,所以在JSP發生更改時,可以丟棄和替換類加載器。

對每個頁面使用單獨的類加載器的決定僅適用於JSP不相互引用的假設。每個JSP只能看到類加載器層次結構,因此它們可以訪問WEB-INF/classes和WEB-INF/lib下的類,但是它們不能在層次結構中看到或橫向。

換句話說,JSP是入口點。它們是依賴關係圖的根源。它們之間的任何共同事物都需要包含文件或移入專用的Java類。

+0

你的意思是說,首先我需要包含具有方法(比如說mymethod())的jsp頁面(比如example.jsp),然後調用方法mymethod()..是嗎? – Ashwani 2013-03-17 17:29:35

+0

如果要將共享代碼保留在JSP中,則需要將該函數移動到專用的JSP包含文件中,並在兩個頁面中都包含該函數。有一頁包括整個其他頁面可能不是一個好方法。 – Brandon 2013-03-17 17:31:57