Velocity初步学习笔记

Velocity初步学习笔记

一. 初识Velocity

    Velocity是一个基于Java的模板引擎,它的作用与JSP相似,都是用来显示前端界面的,但是它们之间的区别在于Velocity只是用于显示数据,并不像JSP可以穿插Java代码,而Velocity拥有类似EL标签的称之为VTL的模板语言,能够为页面提供动态内容。
    使用Velocity的意义在于分离前后端,遵循MVC架构。这种特质让我回想起了曾经学习PHP时使用过的Smarty模板引擎,以及另一种基于Java的HTTL模板引擎,它们都有一些相同的地方。我想模板引擎的出现就是为了更好的让前端开发人员与后端开发人员合作:前端人员不必关心数据来源和生成方式,他只需确信会有数据并直接使用变量名显示数据即可,后端人员也不必再去关心前端页面如何展示,他只需关注数据处理即可。这样前后端就能同时进行开发工作,使工作变得更加高效。同时,也能减轻维护工作的压力。


二. Hello Velocity

    似乎每次学习一门程序语言时,总以Hello World或者Hello XXX这样的实例开始。这次也不例外,那就从Hello Velocity开始吧!
    Step 1:从官网http://velocity.apache.org/download.cgi下载Velocity的jar包。
    Step2:创建一个普通的Java项目,我将其起名为HelloVelocity。
    Step3:在项目中引用Velocity的jar包。
    Step4:创建一个Java文件,我将其起名为HelloVelocity.java。
    Step5:在项目下创建一个Velocity模板,我将其起名为HelloVelocity.vm。
    这里写图片描述
    以上5步完成后,就可以开始实践啦~首先编辑Java文件,主要过程分五步:
    1. 初始化模板引擎
    2. 获取模板文件
    3. 取得velocity的上下文context
    4. 把数据填入上下文
    5. 输出
这里写图片描述
    然后编辑Velocity模板,这里用到了VTL语言,它们都以#字符开始:
    1.#set()。这个指令用于赋值,括号内是一个表达式,可以将值付给变量,变量都是以$字符开始。
    2.#foreach()。很明显,这个指令用于循环,最后要以#end结尾。
    3.##。单行注释以##字符开始,并在本行结束。
    4.#**#。多行注释以#*字符开始,以*#字符结束。
    5.#***#。这是一个注释块,以#**字符开始,以*#字符结束。
    这里写图片描述
    接下来运行Java文件,结果就会输出在控制台。
    这里写图片描述
    以上,就是一个简单的Velocity实例初步应用!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章