StringTemplateParser
时一个string模板的解析器。在string模板中定义类似jsp标签的宏。
在解析过程中,宏被对值替换,值通过自定义的MacroResolver解析得到。
简单示例如下:
String template = "Hello ${foo}. Today is ${dayName}."
</span><span style="color: #008000;">//</span><span style="color: #008000;"> prepare data</span>
Map<String,String> map = <span style="color: #0000ff;">new</span> HashMap<String,String><span style="color: #000000;">();
map.put(</span>"foo","Jodd"<span style="color: #000000;">);
map.put(</span>"dayName","Sunday"<span style="color: #000000;">);
...
</span><span style="color: #008000;">//</span><span style="color: #008000;"> parse</span>
StringTemplateParser stp = <span style="color: #0000ff;">new</span><span style="color: #000000;"> StringTemplateParser();
String result </span>= stp.parse(template,<span style="color: #0000ff;">new</span><span style="color: #000000;"> MacroResolver() {
</span><span style="color: #0000ff;">public</span><span style="color: #000000;"> String resolve(String macroName) {
</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> map.get(macroName);
}
});
</span><span style="color: #008000;">//</span><span style="color: #008000;"> result == "Hello Jodd. Today is Sunday."</span></pre>
StringTemplateParser是可配置的,用户可以设置转义符,或者开始、结尾string(默认是${和})。
参考文献:
[1]http://jodd.org/doc/stringtemplateparser.html