/** * 创建默认模板组{@link GroupTemplate},默认的模板组从ClassPath中读取 * * @return {@link GroupTemplate} */ public static GroupTemplate createGroupTemplate() { return new GroupTemplate(); }
/** * 获得模板 * * @param groupTemplate {@link GroupTemplate} * @param source 模板资源,根据不同的 {@link ResourceLoader} 加载不同的模板资源 * @return {@link Template} */ public static Template getTemplate(GroupTemplate groupTemplate, String source) { return groupTemplate.getTemplate(source); }
@Override public AbstractTemplateEngine init(ConfigBuilder configBuilder) { super.init(configBuilder); try { Configuration cfg = Configuration.defaultConfiguration(); groupTemplate = new GroupTemplate(new ClasspathResourceLoader("/"), cfg); } catch (IOException e) { logger.error(e.getMessage(), e); } return this; }
@Override public void writer(Map<String, Object> objectMap, String templatePath, String outputFile) throws Exception { Template template = groupTemplate.getTemplate(templatePath); try (FileOutputStream fileOutputStream = new FileOutputStream(outputFile)) { template.binding(objectMap); template.renderTo(fileOutputStream); } logger.debug("模板:" + templatePath + "; 文件:" + outputFile); }
/** * 创建默认模板组{@link GroupTemplate},默认的模板组从ClassPath中读取 * * @return {@link GroupTemplate} */ public static GroupTemplate createGroupTemplate() { return new GroupTemplate(); }
/** * 获得模板 * * @param groupTemplate {@link GroupTemplate} * @param source 模板资源,根据不同的 {@link ResourceLoader} 加载不同的模板资源 * @return {@link Template} */ public static Template getTemplate(GroupTemplate groupTemplate, String source) { return groupTemplate.getTemplate(source); }
/** * 创建自定义的 {@link GroupTemplate} * * @param loader {@link ResourceLoader},资源加载器 * @param conf {@link Configuration} 配置文件 * @return {@link GroupTemplate} */ private static GroupTemplate createGroupTemplate(ResourceLoader loader, Configuration conf) { return new GroupTemplate(loader, conf); } }
@Override public Template getTemplate(String resource) { return BeetlTemplate.wrap(engine.getTemplate(resource)); }
/** * 创建自定义的 {@link GroupTemplate} * * @param loader {@link ResourceLoader},资源加载器 * @param conf {@link Configuration} 配置文件 * @return {@link GroupTemplate} */ private static GroupTemplate createGroupTemplate(ResourceLoader loader, Configuration conf) { return new GroupTemplate(loader, conf); } }
@Override public Template getTemplate(String resource) { return BeetlTemplate.wrap(engine.getTemplate(resource)); }
/** * 渲染模板 * * @param templateContent {@link Template} * @param bindingMap 绑定参数 * @param writer {@link Writer} 渲染后写入的目标Writer * @return {@link Writer} */ public static Writer render(Template templateContent, Map<String, Object> bindingMap, Writer writer) { templateContent.binding(bindingMap); templateContent.renderTo(writer); return writer; }
/** * 创建自定义的 {@link GroupTemplate} * * @param loader {@link ResourceLoader},资源加载器 * @param conf {@link Configuration} 配置文件 * @return {@link GroupTemplate} */ public static GroupTemplate createGroupTemplate(ResourceLoader loader, Configuration conf) { return new GroupTemplate(loader, conf); }
/** * 渲染模板 * * @param templateContent {@link Template} * @param bindingMap 绑定参数 * @param writer {@link Writer} 渲染后写入的目标Writer * @return {@link Writer} */ public static Writer render(Template templateContent, Map<String, Object> bindingMap, Writer writer) { templateContent.binding(bindingMap); templateContent.renderTo(writer); return writer; }
/** * 创建自定义的 {@link GroupTemplate} * * @param loader {@link ResourceLoader},资源加载器 * @param conf {@link Configuration} 配置文件 * @return {@link GroupTemplate} */ public static GroupTemplate createGroupTemplate(ResourceLoader loader, Configuration conf) { return new GroupTemplate(loader, conf); }