velocity:宏(#macro)出现中文乱码

最开始使用velocity时,输出中文乱码,我的解决办法 是在调用 mergeTemplate 方法时指定encoding为UTF-8,然后就正常了。

Velocity.mergeTemplate(String templateName, String encoding, Context context, Writer writer)

然而最近在使用velocity写模板时发现宏(#macro)中如果有中文,就会输出乱码(之前一直没有在macro中使用过中文)。宏之外的中文都能正常输出。 google搜索了一下,发现要彻底解决中文乱问题,还要设置input.encoding属性才行,如下:

Properties vprops = new Properties();
vprops.put(Velocity.INPUT_ENCODING,"UTF-8");
vprops.put(Velocity.OUTPUT_ENCODING,"UTF-8");// OUTPUT_ENCODING可以不设,因为我在调用mergeTemplate方法时已经指定了 encoding 为UTF-8
Velocity.init(vprops);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏微服务生态

Flume-NG源码分析-整体结构及配置载入分析

终于开始Flume源码的分析研究工作了,我也是边学边和大家分享,内容上难免有不足之处,望大家见谅。

1124
来自专栏开发技术

cassandra高级操作之JMX操作

  一开始有点无头绪,后面查看cassandra官方文档看到Monitoring章节,里面说到:Cassandra中的指标使用Dropwizard Metric...

1674
来自专栏小勇DW3

AOP中使用Aspectj对接口访问权限进行访问控制

只配置这段会报:The prefix "aop" for element "aop:aspectj-autoproxy" is not bound.

1134
来自专栏jianhuicode

Binder进程间通信详解

2634
来自专栏Java 技术分享

SpringMVC(一)

1112
来自专栏技术墨客

Spring核心——纯Java运行与@Bean

在3.0之前的Spring核心框架中,我们启动一个Spring容器必须使用一个XML文件。而到了3.X之后的版本Spring为创建容器新增了一个入口类——Ann...

713
来自专栏Flutter&Dart

DartVM服务器开发(第二十二天)--RestfulApi封装

阅读该文章之前,我会默认的认为你已经看过我之前的文章,并知道如何使用数据库,开启服务器等!

1643
来自专栏静默虚空的博客

[Spring]04_最小化Spring XML配置

4.1 自动装配 Bean Spring 装配 bean 时,有时非常明确,就是需要将某个 bean 的引用装配给指定属性。 例如,若应用上下文中只有一个 j...

19310
来自专栏Java后端技术

slf4j介绍以及实现原理窥探

  slf4j(全称是Simple Loging Facade For Java)是一个为Java程序提供日志输出的统一接口,并不是一个具体的日志实现方案,就好...

722
来自专栏cloudskyme

jbpm5.1介绍(6)

Junit测试的mini流程helloworld 这是一个在demo中使用的Script Task做的简单示例,在执行到这个任务结点的时候自动输出"hello...

3497

扫码关注云+社区