pom.xml文件添加依赖:
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
新建一个Test case:
@Test
public void testFreemarker() throws Exception {
//1:创建一个模板文件
//2:创建一个Configuration对象
Configuration configuration = new Configuration(Configuration.getVersion());
//3:设置模板所在的路径
configuration.setDirectoryForTemplateLoading(new File("D:/workspace/other/taotao/taotao-item-web/src/main/webapp/WEB-INF/ftl/"));
//4:设置模板的字符集,一般UTF-8
configuration.setDefaultEncoding("UTF-8");
//5:使用Configuration对象加载一个模板文件,需要指定模板文件的文件名
Template template = configuration.getTemplate("hello.ftl");
//6:创建一个数据集,可以是POJO或者Map,推荐使用Map
Map<String,String> data = new HashMap<>();
data.put("hello", "hello freemarker");
//7:创建一个Writer对象,指定输出文件的路径及文件名
File outDir = new File("d:/data/freemarker/out");
if(!outDir.exists()) {
outDir.mkdirs();
}
Writer out = new FileWriter(new File("d:/data/freemarker/out/hello.text"));
//8:使用模板对象的process方法输出文件
template.process(data, out);
//9:关闭流
out.close();
}
========================================================================================================================================================================
/**
* 字符串模板转换
*
* @param data
* 数据对象
* @param template
* 字符串模板
* @return 字符串带数据的视图
* @throws Exception
*/
public static String getString(Object data, String template) throws Exception {
StringWriter result = new StringWriter();
template = template.replaceAll("\\|n\\|", "\n");
Template t = new Template("name1", new StringReader(template),new Configuration(Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS));
t.process(data, result);
return result.toString();
}
|
springboot Freemarker 集成
最新推荐文章于 2024-08-11 09:45:00 发布