日期:2014-05-20  浏览次数:21062 次

Velocity可以设置默认值吗?
如果VelocityContext中没有值,那么vm文件中,我不要直接输出标签,而是输出一个默认值。

请问:默认值在哪设置?

我尝试重写AbstractContext.internalGet()但是这个方法返回的值竟然还要被Velocity强转成Node对象。
我不知道怎么去生成Node对象,而且感觉这种方法复杂,不想这样做。

还有一个问题:vm文件中的变量有可能是小写字符,但是现在我的Context里的值都是大写的。如:vm中有$userName, 但是Context中却是USERNAME=helloworld,(这个问题产生的原因:userName是我们模型系统中的字段,但是我们的系统在取值的时候通通把所有的字段都变成大写了,就成了USERNAME,这是系统架构方面的原因。现在我不想让在vm中写成大写,因此前面说了userName是模型系统里的字段,用户是根据模型系统字段来修改vm文件的,所以要是让他们改成大写会比较别扭,所以我想问:有没有方法在把context的值写入到vm的时候,把vm中变量转换成大写然后再写值呢?

多谢!
------解决方案--------------------
帮忙顶起来。
------解决方案--------------------
velocity还不会呢,帮顶吧
------解决方案--------------------
可以~~ 自己修改一下然后运行程序试试
------解决方案--------------------
接分,结贴。