使用 Click 框架/Velocity 進行 Java Web 應用程式開發
外觀
Velocity 是一個基於 Java 的模板框架,它為 Click 提供 HTML 渲染引擎。Velocity 非常容易學習,使用簡單,而且功能強大。
Velocity 是一個使用 [LICENSE.txt Apache] 軟體許可證的 Apache 開源專案。
Velocity 的全面線上文件包含在此發行版中。
- Velocity 使用者指南
- Velocity 開發者配置指南
- Velocity 模板語言 (VTL) 參考指南
使用 Click,您可以使用頁面的模型將物件新增到頁面模板中。然後,您可以使用 Velocity 的 $ 引用符號訪問這些物件。預設情況下,ClickServlet 將以下物件新增到頁面模板中
- 任何使用欄位名稱的公共 Page 欄位
- context - Servlet 上下文路徑,例如:/mycorp
- cssImports - 要包含在頁面標題中的 CSS 匯入和樣式塊。
- format - 用於格式化物件顯示的 Format 物件。
- imports - 要包含在頁面標題中的 CSS 和 JavaScript 匯入。
- jsImports - 要包含在頁面頁尾中的 JavaScript 匯入和指令碼塊。
- messages - Page getMessage() 方法的 MessagesMap 介面卡。
- path - 要呈現的頁面模板的路徑。
- request - 頁面的 HttpServletRequest 物件。
- response - 頁面的 HttpServletResponse 物件。
- session - 使用者 HttpSession 的 SessionMap 介面卡。
在您的頁面模板中,您可以使用點路徑表示法訪問物件引用。例如
- 歡迎:$[../click-api/net/sf/click/util/SessionMap.html session].user.fullName
或者使用更明確的 Java 表示法
- 歡迎:$[../click-api/net/sf/click/util/SessionMap.html session].get("user").getFullName()
在 Velocity 中,指令以 # 符號為字首。引用訪問內容,指令則執行操作。Velocity 指令的完整集是
- #if #elseif #else - 根據語句的真假輸出內容。
- #foreach - 迴圈遍歷物件列表。
- #macro - 允許使用者根據需要定義 Velocimacro (VM),VTL 模板中重複的片段。
- #set - 建立引用的值。
- #include - 渲染 Velocity 未解析的本地檔案。
- #parse - 渲染 Velocity 解析的本地模板。
- #stop - 停止模板引擎。