jfinal enjoy模板入门
用途
用于渲染需要多次重复的sql以及程序代码,相比较于mybatis组装模块,这种方式更灵活,可以用于组件其他的数据库、脚本语言脚本。
入门示例
取自文件
import com.jfinal.template.Engine;
import com.jfinal.template.Template;
import java.util.HashMap;
import java.util.Map;
public class EnjoyTemplateDemo {
public static void main(String[] args) {
// 创建模板引擎实例
Engine engine = Engine.create("myEngine");
// 设置模板文件加载的基础路径(这里假设模板文件放在resources目录)
engine.setBaseTemplatePath("src/main/resources");
// 准备数据
Map<String, Object> data = new HashMap<>();
data.put("users", new String[]{"Alice", "Bob", "Charlie", "David"});
// 获取模板对象
Template template = engine.getTemplate("template.html");
// 渲染模板
String output = template.renderToString(data);
System.out.println(output);
}
}
template.html是Enjoy模板文件,应该放在src/main/resources目录下:
#(for user in users)
<p>用户名称: #(user)</p>
#(end)
取自字符串
import com.jfinal.template.Engine;
import com.jfinal.template.Template;
import java.util.HashMap;
import java.util.Map;
public class EnjoyTemplateFromStringDemo {
public static void main(String[] args) {
// 创建模板引擎实例
Engine engine = Engine.use();
// 准备模板内容
String templateContent = "#(for user in users)\n 用户名称: #(user)\n#(end)";
// 准备数据
Map<String, Object> data = new HashMap<>();
data.put("users", new String[]{"Alice", "Bob", "Charlie", "David"});
// 使用模板内容创建模板对象
Template template = engine.getTemplateByString(templateContent);
// 渲染模板并输出结果
String output = template.renderToString(data);
System.out.println(output);
}
}