使用 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 - 停止模板引擎。