2010-01-24 39 views

回答

3

使用JSTL和EL代替scriptlet的一般建議與性能完全無關;如果有的話,腳本可能會產生更好的性能。

但他們也導致難以維護的「標籤湯」。你應該使用JSTL/EL,因爲JSP應該是一個表示層,並且不包含重要的邏輯。

2

首先,使用scriptlets(嵌入JSP使用老式<% %>東西原始Java代碼)是一樣使用標籤庫(例如JSTL)和EL(所述${}的東西)。

標籤庫和EL的性能損失是可以忽略不計真的和編譯過程中唯一明顯的是迄今爲止超過使用標籤庫和EL,而不是scriptlets的優勢呢。

+0

我懷疑你完全誤解了這個問題。這聽起來像他完全理解腳本是什麼,只是想知道是否反對使用它們並使用JSTL和EL的建議是因爲後者對性能更好* – 2010-01-24 17:55:51

+0

*聽起來像*,是的;)讓我們看看是什麼該OP說,而不是拋出沉重的話:) – BalusC 2010-01-24 19:00:00

0

在執行之前,所有JSP taglib和scriptlet都會被編譯爲Java類,所以使用其中一個或另一個時幾乎沒有性能差異。

+2

不完全正確 - 使用scriptlets可能會導致一個稍短的調用鏈比使用標籤,因爲scriptlet基本上是java源代碼編譯到您的jsp,而標籤通過另一層間接的。如果甚至可以在實踐中觀察到,則可忽略不計。 – Chii 2010-01-26 07:07:46

+0

自定義標籤的圖層很慢。如果複雜頁面中的活躍表現是一個問題,那麼您可能希望將視圖呈現轉換爲舊式標記或Java代碼。 – 2013-05-09 02:50:41

相關問題