首页 > 代码库 > FreeMarker辅助
FreeMarker辅助
/** * FreeMarker 辅助类 * @author Rubekid * */public class FreeMarkerHelper { /** * 模板文件存放目录 */ private static final String TEMPLATE_PATH = "/templates/freemarker/"; /** * 获取模板内容 * @param tpl * @param rootMap * @return * @throws IOException * @throws TemplateException */ public static String fetch(String tpl, Object rootMap) throws IOException, TemplateException{ Template template = getTemplate(tpl); Writer out= new StringWriter(); template.process(rootMap, out); String result = out.toString(); out.flush(); return result; } /** * 输出显示 * @param tpl * @param rootMap * @param out * @throws IOException * @throws TemplateException */ public static void display(String tpl, Object rootMap, Writer out) throws IOException, TemplateException{ Template template = getTemplate(tpl); template.process(rootMap, out); out.flush(); } /** * 获取模板 * @param tpl * @return * @throws IOException */ private static Template getTemplate(String tpl) throws IOException{ Configuration config = new Configuration(); String path = WebUtils.getContextPath() + TEMPLATE_PATH; String name = tpl; int pos = tpl.lastIndexOf("/"); if(pos > -1){ path += tpl.substring( 0, pos+1 ); name += tpl.substring( pos+1 ); } config.setDirectoryForTemplateLoading(new File(path)); config.setObjectWrapper(new DefaultObjectWrapper()); return config.getTemplate(name ,"utf-8"); } /** * 获取模板(通过字符串) * @param source * @throws IOException */ private static Template getTemplate(String name, String source) throws IOException{ Configuration config = new Configuration(); StringTemplateLoader loader = new StringTemplateLoader(); loader.putTemplate(name, source); config.setTemplateLoader(loader); return config.getTemplate(name, "utf-8"); }
FreeMarker辅助
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。