在速度模板中的列表中访问对象属性

时间:2017-10-27 12:56:20

标签: java xml list templates velocity

我想以速度

访问对象属性

我有以下内容。

public class myObject(){
    @key("name")
    private String name;

    @key("other")
    private String other;

    /*
      getters and setters here
    */
}

然后我有另一个包含myObject对象列表的类

public class testClass(){
    @key("objectList")
    private List<myObject> randomlist;
}

如何访问myObject列表的nameother? 我的速度看起来如下,但不起作用

#macro( getListContent $tag $tag2 $listName)
#foreach($object in [0..$listName-size])
<$tag1>$object-name</$tag1>
<$tag2>$object-other</$tag2>
#end
#end

最后我有

#getListContent("name" "other" $testClass.get("objectList"))

但这不起作用。如何访问使用注释@key映射的对象属性。某些帮助非常有用。

1 个答案:

答案 0 :(得分:0)

您应该看到macro文档,在您的foreach语句中,您需要放置列表对象,

此外,名称和其他名称都是私人的,因此无法访问,

但你可以使用public getters方法:

#macro( getListContent $tag $tag2 $listName)
#foreach($object in $listName)
<$tag1>$object.getName()</$tag1>
<$tag2>$object.getOther()</$tag2>
#end
#end