vm模板引擎
一 vm 是什么 ?
二 vm怎么用 ?
vm是基于java的模板引擎,可以吧java定义返回的对象,字符串,属性直接以相应的模式解析出来,加载在标签中。所以相应的方法只要按照属性获取,列表循环获取即可。
三 常用的vm的语法有什么 ?
而针对复杂的逻辑,一般的语法是解决不了所有问题的,那么vm为我们准备了哪些常用语法呢?
1 设置变量 所有的变量默认按照字符串的形式获取#set ($count='是的')
vm是弱类型的变量,但是要注意一下几点,
vm中的字符串将会被重新解析 特别是$命名的
vm变量的命名是一个大小写的字母开始的,所以货币符号的使用是没有问题的
正确的使用变量的方法是${var} 而$var 也是可以获取的,但是实现无缝拼接的时候,需要区分
获取属性的时候,属性加在{}里面
变量可以使变量引用,字符串,数字,属性引用,方法引用,数组列表
#set( $monkey = $bill ) variable reference #set( $monkey.Friend = "monica" ) string #set( $monkey.Blame = $whitehouse.Leak ) property reference #set( $monkey.Plan = $spindoctor.weave($web) ) method reference #set( $monkey.Number = 123 ) number #set( $monkey.Say = ["Not", $my, "fault"] ) ArrayList
讯享网
vm中的属性不会识别为属性变量,而是识别为属性方法
2 循环
讯享网#foreach($l in $list) $l 可以是一个具体的字符串,也可能是一个对象,继续读取属性方法 ($l.attr) #end
3 条件判断
#if(condition) #elseif(condition) #else #end
条件开始判断 只要一个开始 一个结束语法 而且是就近匹配 注意与循环的嵌套使用
4 注释 一般情况下 为了更好的理解你的页面语法 需要一定的注释语句
单行注释
多行注释 #* #
文档注释 #* #
5 逻辑运算
6 宏的使用
也就是vm语法的函数,定义函数
讯享网#macro(宏的名称 $参数1 $参数2 …) 语句体(即函数体) #end
使用函数,注意的是 参数之间空格隔开
#宏的名称($参数1 $参数2 …)
7 引入文件
#include #parse 分别用于引入文件 ,一个适用于多个 ,一个适用于单个
四 vm 的页面模板如何快速应用?
- eclipse设置vm文档关联步骤 :
打开Eclipse ---》window----》preference -----》Content type-----》Text----》Html -----》Add ------》 - 项目配置
首先需要配置的是Velocity引擎自己。要做到这点,可以通过以下方式在Spring配置文件中声明一个VelocityConfigurer Bean:
<bean id="velocityConfigurer" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer"> <property name="resourceLoaderPath"> <value>WEB-INF/velocity/</value> </property> </bean>
VelocityConfigurer负责在Spring中设置Velocity引擎。这里,我们通过属性resourceLoaderPath告诉Velocity到哪里寻找它的模板。我们建议将模板放到WEB-INF的某个子目录下面,这样可以保证这些模板不能被直接访问。也可以通过velocityProperties属性来设置其他Velocity的配置细节。例如下面的VelocityConfigurer配置:
讯享网<bean id="velocityConfigurer" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer"> <property name="resourceLoaderPath"> <value>WEB-INF/velocity/</value> </property> <property name="velocityProperties"> <props> <prop key="directive.foreach.counter.name">loopCounter</prop> <prop key="directive.foreach.counter.initial.value">0</prop> </props> </property> </bean> <bean id= "velocityConfigurer" class= "org.springframework.web.servlet.view.velocity.VelocityConfigurer" > <property name= "resourceLoaderPath"> <value> /WEB-INF/view/</value > </property> <property name= "velocityProperties"> <props> <prop key= "input.encoding">UTF-8</prop > <prop key= "output.encoding">UTF-8</prop > </props> </property> </bean>
from: https://www.kancloud.cn/eagles/codingrules/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/37938.html