mirror of
https://gitee.com/dromara/hutool.git
synced 2025-04-05 17:37:59 +08:00
FreemarkerEngine修改默认版本参数
This commit is contained in:
parent
4f83c48d38
commit
067d7dc495
@ -2,9 +2,10 @@
|
|||||||
# 🚀Changelog
|
# 🚀Changelog
|
||||||
|
|
||||||
-------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------
|
||||||
# 5.8.27(2024-02-10)
|
# 5.8.27(2024-02-19)
|
||||||
|
|
||||||
### 🐣新特性
|
### 🐣新特性
|
||||||
|
* 【extra 】 FreemarkerEngine修改默认版本参数
|
||||||
|
|
||||||
### 🐞Bug修复
|
### 🐞Bug修复
|
||||||
|
|
||||||
|
@ -529,7 +529,7 @@ public class MapUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 将键值对转换为二维数组,第一维是key,第二纬是value
|
* 将键值对转换为二维数组,第一维是key,第二维是value
|
||||||
*
|
*
|
||||||
* @param map map
|
* @param map map
|
||||||
* @return 数组
|
* @return 数组
|
||||||
|
@ -10,12 +10,12 @@ import cn.hutool.core.io.IoUtil;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 抽象模板,提供将模板融合后写出到文件、返回字符串等方法
|
* 抽象模板,提供将模板融合后写出到文件、返回字符串等方法
|
||||||
*
|
*
|
||||||
* @author looly
|
* @author looly
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public abstract class AbstractTemplate implements Template{
|
public abstract class AbstractTemplate implements Template{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(Map<?, ?> bindingMap, File file) {
|
public void render(Map<?, ?> bindingMap, File file) {
|
||||||
BufferedOutputStream out = null;
|
BufferedOutputStream out = null;
|
||||||
@ -26,7 +26,7 @@ public abstract class AbstractTemplate implements Template{
|
|||||||
IoUtil.close(out);
|
IoUtil.close(out);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String render(Map<?, ?> bindingMap) {
|
public String render(Map<?, ?> bindingMap) {
|
||||||
final StringWriter writer = new StringWriter();
|
final StringWriter writer = new StringWriter();
|
||||||
|
@ -103,7 +103,7 @@ public class FreemarkerEngine implements TemplateEngine {
|
|||||||
config = new TemplateConfig();
|
config = new TemplateConfig();
|
||||||
}
|
}
|
||||||
|
|
||||||
final Configuration cfg = new Configuration(Configuration.VERSION_2_3_28);
|
final Configuration cfg = new Configuration(Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS);
|
||||||
cfg.setLocalizedLookup(false);
|
cfg.setLocalizedLookup(false);
|
||||||
cfg.setDefaultEncoding(config.getCharset().toString());
|
cfg.setDefaultEncoding(config.getCharset().toString());
|
||||||
|
|
||||||
|
@ -0,0 +1,38 @@
|
|||||||
|
package cn.hutool.extra.template;
|
||||||
|
|
||||||
|
import cn.hutool.core.lang.Dict;
|
||||||
|
import cn.hutool.core.util.CharsetUtil;
|
||||||
|
import cn.hutool.extra.template.engine.freemarker.FreemarkerEngine;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
public class Issue3488Test {
|
||||||
|
@Test
|
||||||
|
public void freemarkerTest() {
|
||||||
|
final TemplateConfig config = new TemplateConfig("templates", TemplateConfig.ResourceMode.CLASSPATH);
|
||||||
|
config.setCustomEngine(FreemarkerEngine.class);
|
||||||
|
config.setCharset(CharsetUtil.CHARSET_UTF_8);
|
||||||
|
|
||||||
|
final TemplateEngine engine = TemplateUtil.createEngine(config);
|
||||||
|
Template template = engine.getTemplate("issue3488.ftl");
|
||||||
|
|
||||||
|
final UserService userService = new UserService();
|
||||||
|
userService.setOperator("hutool");
|
||||||
|
final PaymentInfo paymentInfo = new PaymentInfo();
|
||||||
|
paymentInfo.setUserService(userService);
|
||||||
|
|
||||||
|
String result = template.render(Dict.create().set("paymentInfo", paymentInfo));
|
||||||
|
//Console.log(result);
|
||||||
|
//Assert.assertEquals("你好,hutool", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
static class PaymentInfo{
|
||||||
|
private UserService userService;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
static class UserService{
|
||||||
|
private String operator;
|
||||||
|
}
|
||||||
|
}
|
1
hutool-extra/src/test/resources/templates/issue3488.ftl
Normal file
1
hutool-extra/src/test/resources/templates/issue3488.ftl
Normal file
@ -0,0 +1 @@
|
|||||||
|
hello,${paymentInfo}
|
Loading…
Reference in New Issue
Block a user