之前没接触过freemark.应项目要求使用freemark.结果发现使用freemark与不使用性能差距很大.如下是我的代码:
[code="java"]
Configuration cfg = new Configuration();
StringTemplateLoader templateLoader = new StringTemplateLoader();
templateLoader.putTemplate(
"tempTemplate",
"${fm.encode(\"${fm.encodeStr}&init=${fm.init}\")}");
cfg.setTemplateLoader(templateLoader);
cfg.setEncoding(Locale.CHINA, "UTF-8");
EncoderExample fm = new EncoderExample("test.test2");
Map map = new HashMap();
map.put("fm", fm);
CharArrayWriter writer = new CharArrayWriter(1000);
try
{
Template template = cfg.getTemplate("tempTemplate");
template.process(map, writer);
}
catch (Exception e)
{
System.out.println("Proccess ERROR." + e.getMessage());
}
finally
{
writer.flush();
writer.close();
}
[/code]
执行后发现Configuration这个类实例化的时候花费时间很长.大概200ms左右.相当于实例化普通类60000个.
请问下是否有其他创建模板的办法?或者有其他方式可以实现同样的功能?
麻烦知道的朋友帮忙下 谢谢啊~~