javascript
java ee jsp_EE JSP:使用自定义标签库生成动态内容
java ee jsp
在Web應用程序中開發View層時,您希望盡量不要重復JSP文件中的內容。 JSP spec API允許您通過使用標記庫來減少這種重復。 定制JSP標記是用戶定義的xml標記元素,您可以將其插入JSP文件以替換為某些動態內容。
這是一個使用自定義JSP標記的簡單jsp示例 ,該標記插入服務器時間戳記值:
JSP標記還可以允許您將參數作為標記的屬性傳遞。 在上面的示例中, <myapp:serverTime>標記使用自定義pattern屬性來控制日期字符串的格式。
JSP標簽也可以與子標簽或任何HTML內容元素嵌套在一起。 嵌套的JSP標記可以為您提供一種有條件地呈現封閉內容的方法。 由于XML結構的緣故,使用標記來呈現條件內容更為冗長,但是它消除了在JSP中使用直接Scriptlet代碼的麻煩。
有兩種創建自定義JSP標記的方法。 第一種方法是使用純Java代碼實現標簽,然后將其注冊到XML taglib定義文件中。 我現在將略過此方法,并向您展示另一種更簡單的方法。
第二種方法使用類似于JSP頁面的“標記文件”來構造標記(請記住,JSP標記只不過是某些內容的占位符!)。 我將向您展示上面示例的第二種方法。 首先在src/main/webapp/WEB-INF/tags/myapp項目文件夾下創建一個serverTime.tag文件。
<%@ attribute name="pattern" required="true" %> <%@ tag import="java.util.Date, java.text.SimpleDateFormat" %> <%= new SimpleDateFormat(pattern).format(new Date()) %>標記文件的實現取決于文件命名和位置的簡單約定。 請注意, src/main/webapp/WEB-INF/tags目錄是必需的路徑。 在此文件夾中,您可以創建要組織標記文件的任何子文件夾。 在我們的例子中,它是myapp目錄。 標記文件可以與您通常創建的任何JSP文件一樣,除了標記指令幾乎沒有什么不同。 您可以查看JSP規范以獲取它們的完整列表。 無論您從標簽文件中輸出什么,該文件都會被插入并替換標簽的調用者。 請注意,我如何使用pattern屬性參數來允許用戶更改日期模式,它可以在Scriptlet Java代碼內的標記文件中作為變量使用。
由于您可以像使用JSP一樣編寫標記文件,因此我再次提醒即使在標記文件內部也過度使用Java代碼Scriptlet。 如果必須調用Java代碼,請嘗試將代碼包裝并用單行調用替換,或使用純Java代碼編寫Tag實現; 特別是如果您涉及非常復雜的業務邏輯。 這將使調試和維護代碼變得更加容易。
JSP標記提供了一種在Web應用程序中構造View層的強大方法。 它可以幫助您重用代碼或內容,并生成特定的響應。
翻譯自: https://www.javacodegeeks.com/2015/02/ee-jsp-generating-dynamic-content-with-custom-tag-libraries.html
java ee jsp
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java ee jsp_EE JSP:使用自定义标签库生成动态内容的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: openshift使用_OpenShif
- 下一篇: 物业居民备案管理办法(物业居民备案)