在Java統一表達式語言有EL語法兩種基本類型:
${expression for immediate evaluation}
#{expression for deferred evaluation}
我理解這兩個在JaveServer的區別面孔:JSF有不同的生命週期之感,並立即表達式總是在頁面呈現時評估,而延遲表達式可以在頁面呈現,回發或兩者評估。
但是,我對JavaServer Pages的區別並不清楚。據我所知,JSP沒有JSF所具有的生命週期意義。事實上,我有些驚訝地發現,在JSP中,延遲語法甚至是合法的。不過,現在我知道這是因爲向後兼容性<jsp-config>
設置是在部署描述符可用來禁用預JUEL JSP,它們使用的語法用於其他目的遞延語法檢測:
<deferred-syntax-allowed-as-literal>
所以,問題是,有什麼區別?顯然,延遲語法在JSP中並不意味着它在JSF中的意思完全相同,但我無法在任何地方找到描述如何使用JSP的延遲語法的任何文檔。
它們只是JSP中的同義詞嗎?
謝謝。這確實有幫助。我之前沒有看到''聲明中''的''和''選項。然而,這個文件並不是非常明確。很顯然,它的工作方式與JSF中的不同(在JSP中沒有回傳)。這裏的「延期」是否意味着「只要寫標籤的開發者決定評估它,或者可能永遠不會?」 –
2013-02-11 05:27:40
另外,您可以將鏈接發佈到您從其他論壇收集的鏈接嗎?謝謝。 – 2013-02-11 05:28:43
我從這裏得到了這些信息。 http://www.coderanch.com/t/590264/JSP/java/JSP-Unified-EL – blitzen12 2013-02-11 06:28:53