关于Velocity变量问题

问题描述

关于ab.cd这样的key,Velocity会将cd当成属性或是get方法那么若是key就是ab.cd,那么有办法得到吗?

解决方案

解决方案二:
直接调方法
解决方案三:
引用1楼ticmy的回复:

直接调方法

不知您指的是哪个方法,以一个例子来吧?比如:mv.addObject("ab.cd","test");

用Velocity怎么取到test
解决方案四:
顶一个~有知道的朋友吗
解决方案五:
引用2楼u012345283的回复:

Quote: 引用1楼ticmy的回复:
直接调方法

不知您指的是哪个方法,以一个例子来吧?比如:mv.addObject("ab.cd","test");

用Velocity怎么取到test

#set($i="ab.cd")$!{mv.i}
解决方案六:
引用4楼janda2011的回复:

Quote: 引用2楼u012345283的回复:
Quote: 引用1楼ticmy的回复:
直接调方法

不知您指的是哪个方法,以一个例子来吧?比如:mv.addObject("ab.cd","test");

用Velocity怎么取到test

#set($i="ab.cd")$!{mv.i}

$!mv是什么?没有这个对象的啊。key是"ab.cd"啊
解决方案七:
mv是Map的话:#set($i="ab.cd")$!mv.get($!{i})//打印结果test

解决方案八:
引用6楼janda2011的回复:

mv是Map的话:#set($i="ab.cd")$!mv.get($!{i})//打印结果test

关键是没有mv
解决方案九:
引用7楼u012345283的回复:

Quote: 引用6楼janda2011的回复:
mv是Map的话:#set($i="ab.cd")$!mv.get($!{i})//打印结果test

关键是没有mv

这只是如何获取你例子的值(你源码获取大同小异),你又不把源码贴出来!我们怎么找啊。。。。。。。。
解决方案十:
引用8楼janda2011的回复:

Quote: 引用7楼u012345283的回复:
Quote: 引用6楼janda2011的回复:
mv是Map的话:#set($i="ab.cd")$!mv.get($!{i})//打印结果test

关键是没有mv

这只是如何获取你例子的值(你源码获取大同小异),你又不把源码贴出来!我们怎么找啊。。。。。。。。

你是没有MVC的开发经验还是?mv.addObject("ab.cd","test");

mv是ModelAndView,若要得到test,本来在页面上应该写$!ab.cd可是这样Velcoity会认为是ab.getCd(),你懂了吗?照你的那种写法,直接mv.get("ab.cd")不就好了吗?何必set?
解决方案十一:
好吧,我只能说我们不是这样使用Velocity模板引擎的!也不是每次给mv添加属性设置什么的!甚至我们配置Velocity模板都是通过xml配置!并没有你们这样复杂!原谅我唔知吧~
解决方案十二:
引用10楼janda2011的回复:

好吧,我只能说我们不是这样使用Velocity模板引擎的!也不是每次给mv添加属性设置什么的!甚至我们配置Velocity模板都是通过xml配置!并没有你们这样复杂!原谅我唔知吧~

用最根本的方式使用Velocity,不也是这样吗:context.put("ab.cd","test");

这样在template里怎么取呢?难道一定要把它存到map里先?然后template里用map.get("ab.cd")?

时间: 2024-12-02 07:13:56

关于Velocity变量问题的相关文章

html文件中jquery与velocity变量中的$冲突的解决方法_jquery

问题描述: 在使用velocity模版引擎的环境下,使用jquery时,如:$.fullCalendar.gcalFeed('http://www.google.com/calendar/feeds/sfzc1%40realintelligence.com/public/basic') 其中$与velocity变量中的$冲突. 解决方案: 定义一个velocity变量:#set($jquery="$.") 然后:${jquery}fullCalendar.gcalFeed('http:

Velocity基本语法介绍_java

一.基本语法1."#"用来标识Velocity的脚本语句,包括#set.#if .#else.#end.#foreach.#end.#iinclude.#parse.#macro等:如:#if($info.imgs)<img src="http://jb51.net/ydmx_lei/blog/$info.imgs" border=0>#else<img src=https://yunqi-tech.oss-cn-hangzhou.aliyuncs

Template和JSP技术

js (本文发于java emag第一期)一.起源与现状:关于Template和JSP的起源还要追述到Web开发的远古年代,那个时候的人们用CGI来开发web应用,在一个CGI程序中写HTML标签.在这之后世界开始朝不同的方向发展:sun公司提供了类似于CGI的servlet解决方案,但是无论是CGI还是servlet都面对同一个问题:在程序里写html标签,无论如何都不是一个明智的解决方案.于是sun公司于1999年推出了JSP技术.而在另一个世界里,以PHP和ASP为代表的scriptlet

如何在Velocity中将变量赋值为null?

问题描述 代码如下:#if($!Message)${Message}#set($Message=$null}#end即将Message里面的内容显示一遍后就赋值成null,但这个null值怎么也赋不进去我查看了网上的资料,将Velocity的库换成了最新的1.6.2并在properties里面添加了directive.set.null.allowed=true这个项但依然无法起作用.请问大家碰到过这样的问题吗?应该怎么解决?

Tiny模板引擎(Velocity Plus)应用示例

把TinyTemplate当成是Velocity的升级版其实也是可以的,毕竟它的语法是基到Veloccity扩展而来的,兼容度在80%以上. 至于TinyTemplate的实例是怎样的,且看下面: 宏的可变参数 在Java中的可变参数使用起来非常方便,Tiny模板也对可变参有一定支持. ? 1 2 3 4 5 6 7 8 #macro hello() ParameterList: ${helloParameterList.size()}     #for(para:helloParameterL

TinyTemplate(Velocity Plus版)即将火热推出~~~

本来是没有自己写一个模板引擎的计划的,因为按我的理解,一直认识这种"语言"级的引擎,难度是非常大的.总感觉自己的水平不够,因此不敢有这个念头.直到大量使用Velocty的时候,碰到velocty诸多尽如人意的地方,但是又无能为力,退回到JSP吧,又心不有甘.于是就期望着寻找一种语法结构接近velocty,但是又没有Velocity这些不方便之处的模板语言.于是进到一个模板语言群,一群大佬们个个至少是一个模板语言的作者,于是作者在里面表达了自己的期望,大佬们都介绍了自己的模板引擎,于是作

Velocity 为 Java Web 应用开发“增速”

web 一.模板引擎有什么用? 简单地说,模板引擎的作用就是取得数据并加以处理,最后显示出数据.例如,假设有一个企业职工的清单,我们可以用模板引擎将它以HTML页面的形式显示在企业的Intranet上,或简化后显示在管理员的手机上.使用模板引擎的好处就在于开发者和设计者能够以最合适的方式操作和利用数据,Velocity就是一个模板引擎的绝佳范例.Velocity的英文含义是"速度.流通速度.速率:迅速,快速",也许它的作者希望Velocity能够提高人们开发Web应用的速度吧. Vel

简单Velocity实践

Velocity是一种模板语言,它的作用.好处等可以找到很多资料,下面我们分二次来进行简单实践,第一部份是hello world .看我做完这个实验,你就知道,初步上手其实是一件简单的事情:) 1. 建立模板文件 hello.vm,简单些,全文如下: Hello, $name 2. 建立Class文件: import java.io.BufferedWriter; import java.io.OutputStreamWriter; <?xml:namespace prefix = o ns =

Velocity初体验

不少人看过或了解过Velocity,名称字面翻译为:速度.速率.迅速,用在Web开发里,用过的人可能不多,大都基本知道和在使用Struts,到底Velocity和Struts是如何联系,怎么看待Velocity呢?让我们来尝试一下,了解Velocity的概念,通过在这里的介绍,强调在技术选择上的问题,让大家在选择项目开发时,可以考虑Velocity,另外也让大家了解它的思想,毕竟它提供了一个很好的思维方式,给大家换换筋骨,换一种思考的方式. 本文基于你对Java开发有一定基础,知道MVC,Str