Apache Velocity自定义指令附加信息

时间:2015-09-25 12:27:35

标签: java velocity

使用apache velocity的自定义指令后,如何获取其他信息?

我们有一组具有一组属性的对象,每个属性都是一个字符串,可以是一个速度模板。我们有一个自定义指令,以便模板可以包含对其他对象的属性的引用,例如:

public class Object
{
     public String name; //unique identifier

     public Map<String, String> properties ....

     public Object(String name)
     {
          this.name = name
     }
}

Object object1 = Object("object1")
object1.property("object1Key") = "object1Value"

Object object2 = Object("object2")
object2.property("object2Key") = "#ObjectProperty('object1', 'objectKey1')"

object2.property(“object2Key”)的'已处理'输出是“object1Value”。

我想要做的是构建一个列表,显示哪些属性引用当前属性。例如:

Set<String> references = getReferences(object1, "object1Key")

references将包含一组引用指定属性的字符串。在这种情况下,引用将包含一个字符串,例如:“object2-object2Key”,表示object1Key上的object1属性引用了object2Key上的object2属性。

我怀疑这可以通过向'VelocityEngine'对象添加'应用程序属性'来实现,但我不确定这是否是正确的方法?

0 个答案:

没有答案