java生成HTML模板
Java可以使用模板引擎来生成HTML模板。常用的模板引擎包括Freemarker、Thymeleaf、Velocity等。
以下是使用Freemarker生成HTML模板的示例:
- 添加Freemarker依赖
在Maven中添加以下依赖:
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.30</version>
</dependency>
- 编写模板
在resources目录下创建一个templates文件夹,然后在该文件夹下创建一个名为index.ftl的模板文件,内容如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>${title}</title>
</head>
<body>
<h1>${message}</h1>
<ul>
<#list items as item>
<li>${item}</li>
</#list>
</ul>
</body>
</html>
该模板文件中包含了三个占位符:${title}、${message}、${items}。分别用于表示网页标题、消息和列表项。
- 使用模板引擎生成HTML模板
在Java代码中使用Freemarker模板引擎来生成HTML模板,示例如下:
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;
public class FreemarkerDemo {
public static void main(String[] args) throws IOException, TemplateException {
Configuration cfg = new Configuration(Configuration.VERSION_2_3_30);
cfg.setClassForTemplateLoading(FreemarkerDemo.class, "/templates");
Template template = cfg.getTemplate("index.ftl");
Map<String, Object> dataModel = new HashMap<>();
dataModel.put("title", "Java生成HTML模板");
dataModel.put("message", "Hello, world!");
dataModel.put("items", new String[]{"item1", "item2", "item3"});
Writer out = new OutputStreamWriter(System.out);
template.process(dataModel, out);
out.flush();
}
}
该示例中,首先创建了一个Configuration对象,并设置了模板文件的加载路径。然后获取index.ftl模板文件,并通过Map对象传递数据模型。最后使用Writer对象将生成的HTML模板输出到控制台。
运行该示例,将输出以下HTML代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Java生成HTML模板</title>
</head>
<body>
<h1>Hello, world!</h1>
<ul>
<li>item1</li>
<li>item2</li>
<li>item3</li>
</ul>
</body>
</html>
以上就是使用Java生成HTML模板的示例。其他模板引擎的使用方法类似,只需将模板引擎的依赖添加到项目中,并按照其官方文档使用即可。
原文地址: https://www.cveoy.top/t/topic/scf 著作权归作者所有。请勿转载和采集!