Java StringTemplate 遍历复杂对象列表
Java StringTemplate Iterating over List of Complex Object
我有一个 class 像这样:
public class Foo {
private String s;
}
我有一个上述对象的列表。我希望能够遍历此列表并打印出字符串 属性 s
。我有以下代码来呈现字符串模板:
Map<String, Object> params = new HashMap<>();
List<Foo> foos = new ArrayList<>();
foos.add(new Foo("A"));
foos.add(new Foo("B"));
foos.add(new Foo("C"));
params.put("foos", foos);
ST st = new ST("Hello, $data.(\"foos\") : {foo | $foo.s;separator=\", \"$}$", '$', '$');
st.add("data", params);
template = st.render();
System.out.println(template);
但输出只是:
Hello, ABC
如何正确地遍历该列表并以逗号分隔打印出来?
年份分隔符分隔 foo.s
的元素,而不是 foo
的元素。尝试
ST st = new ST("Hello, $data.(\"foos\") : {foo | $foo.s$};separator=\", \"$", '$', '$');
我有一个 class 像这样:
public class Foo {
private String s;
}
我有一个上述对象的列表。我希望能够遍历此列表并打印出字符串 属性 s
。我有以下代码来呈现字符串模板:
Map<String, Object> params = new HashMap<>();
List<Foo> foos = new ArrayList<>();
foos.add(new Foo("A"));
foos.add(new Foo("B"));
foos.add(new Foo("C"));
params.put("foos", foos);
ST st = new ST("Hello, $data.(\"foos\") : {foo | $foo.s;separator=\", \"$}$", '$', '$');
st.add("data", params);
template = st.render();
System.out.println(template);
但输出只是:
Hello, ABC
如何正确地遍历该列表并以逗号分隔打印出来?
年份分隔符分隔 foo.s
的元素,而不是 foo
的元素。尝试
ST st = new ST("Hello, $data.(\"foos\") : {foo | $foo.s$};separator=\", \"$", '$', '$');