使用Freemarker生成html文件,保存到MinIO上, 在前端展示的时候直接从MinIO上获取
时间: 2024-06-11 16:09:57 浏览: 124
freemarker生成html
4星 · 用户满意度95%
以下是一个使用Freemarker生成html文件并保存到MinIO上的示例代码:
```
// 初始化MinIO客户端
MinioClient minioClient = new MinioClient("http://minio.example.com", "ACCESS_KEY", "SECRET_KEY");
// 定义模板数据
Map<String, Object> data = new HashMap<>();
data.put("title", "Hello World");
data.put("content", "This is an example generated by Freemarker.");
// 使用Freemarker生成html文件
Configuration cfg = new Configuration(Configuration.VERSION_2_3_31);
cfg.setClassForTemplateLoading(getClass(), "/");
Template template = cfg.getTemplate("template.ftl");
StringWriter writer = new StringWriter();
template.process(data, writer);
String htmlContent = writer.toString();
// 将html文件保存到MinIO上
ByteArrayInputStream inputStream = new ByteArrayInputStream(htmlContent.getBytes(StandardCharsets.UTF_8));
minioClient.putObject("mybucket", "example.html", inputStream, inputStream.available(), "text/html");
// 在前端展示时从MinIO上获取html文件
String url = minioClient.presignedGetObject("mybucket", "example.html");
// 在前端使用url展示html内容
```
在实际应用中,需要根据具体情况进行调整和优化。例如,可以将MinIO客户端的初始化放在应用启动时进行,避免频繁创建客户端对象。另外,还需要考虑访问MinIO的安全性和性能等问题。
阅读全文