All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.whaleal.icefrog.extra.template.Template Maven / Gradle / Ivy

package com.whaleal.icefrog.extra.template;

import java.io.File;
import java.io.OutputStream;
import java.io.Writer;
import java.util.Map;

/**
 * 抽象模板接口
 *
 * @author Looly
 * @author wh
 *
 */
public interface Template {

	/**
	 * 将模板与绑定参数融合后输出到Writer
	 *
	 * @param bindingMap 绑定的参数,此Map中的参数会替换模板中的变量
	 * @param writer 输出
	 */
	void render(Map bindingMap, Writer writer);

	/**
	 * 将模板与绑定参数融合后输出到流
	 *
	 * @param bindingMap 绑定的参数,此Map中的参数会替换模板中的变量
	 * @param out 输出
	 */
	void render(Map bindingMap, OutputStream out);

	/**
	 * 写出到文件
	 * @param bindingMap 绑定的参数,此Map中的参数会替换模板中的变量
	 * @param file 输出到的文件
	 */
	void render(Map bindingMap, File file);

	/**
	 * 将模板与绑定参数融合后返回为字符串
	 *
	 * @param bindingMap 绑定的参数,此Map中的参数会替换模板中的变量
	 * @return 融合后的内容
	 */
	String render(Map bindingMap);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy