专栏首页Java开发freemarker 中文乱码问题解决办法

freemarker 中文乱码问题解决办法

解决办法一:通过修改配置文件freemarker.properties,修改默认编码:

locale=zh_CN
default_encoding=gbk
number_format=#
date_format=yyyy-MM-dd
time_format=HH:mm:Ss
datetime_format=yyyy-MM-dd HH:mm:Ss

还有1个办法 在contentType里设置value为text/html;charset=UTF-8"

<!-- FreeMarker视图解析器 -->
<bean id="viewResolver"
    class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
    <property name="viewClass"
        value="org.springframework.web.servlet.view.freemarker.FreeMarkerView" />
    <property name="contentType" value="text/html;charset=UTF-8" />
    <property name="cache" value="false" />
    <property name="viewNames" value="*.ftl" />
    <property name="suffix" value="" />
    <property name="order" value="2" />
</bean>

解决办法二:通过spring或其他第三方工具配置:

<bean id="freemakerCongfig"
    class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
       <property name="templateLoaderPath">
       <value>/WEB-INF/web/</value>
       </property>
       <property name="freemarkerSettings">
       <props>
       <prop key="defaultEncoding">gbk</prop>
       </props>
       </property>
    </bean>

org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer在spring-webmvc.jar 包里面,项目要导入这个jar包才可以,或者会找不到类。

另外,页面编码和charset要跟上面配置的一致才可以,<meta http-equiv="Content-type" content="text/html; charset=gbk">

注意:还有一种常见的导致乱码问题:编辑器或文件保存的编码和页面设置的编码不一致会导致乱码,

例如文件的编码(用记事本打开,另存为可以看到文件的编码)为UTF-8而页面的charset=gbk就会出现乱码,反之也一样。

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring MVC多个视图解析器及优先级

    如果应用了多个视图解析器策略,那么就必须通过“order”属性来声明优先级,order值越低,则优先级越高

    試毅-思伟
  • freemarker Velocity获取request,session

    这样,在页面中使用${rc.contextPath} 就可获得contextPath

    試毅-思伟
  • Spring集成MyBatis 通用Mapper以及 pagehelper分页插件

    这里送上楼主配置的Spring DataSource 和 TransactionManager 和MyBatis配置

    試毅-思伟
  • Spring整合Mybaits java.sql.SQLException: Access denied for user '***'@'localhost' (using password: YES

    最近在搞Spring和Mybatis的整合,当我们在Spring里面配置数据源,而数据源是从外部的properties文件读取过来的时候就会报错

    Arebirth
  • 快速集成 Flyway、MyBatis、MyBatis-Generator、H2

    导读:如何快速集成 Flyway,MyBatis,MyBatis-Generator,H2? 优质教程请关注微信公众号“Web项目聚集地”

    用户1093975
  • Oozie分布式任务的工作流——邮件篇

    在大数据的当下,各种spark和hadoop的框架层出不穷。各种高端的计算框架,分布式任务如乱花般迷眼。你是否有这种困惑!——有了许多的分布式任务,但是每天需...

    用户1154259
  • 使用Spring AOP实现MySQL数据库读写分离案例分析

    分布式环境下数据库的读写分离策略是解决数据库读写性能瓶颈的一个关键解决方案,更是最大限度了提高了应用中读取 (Read)数据的速度和并发量。

    Java后端技术
  • mybatis的三种批量插入以及次效率比较

    特别注意:mysql默认接受sql的大小是1048576(1M),即第三种方式若数据量超过1M会报如下异常:(可通过调整MySQL安装目录下的my.ini文件中...

    小勇DW3
  • Spring【DAO模块】知识要点

    前言 上一篇Spring博文主要讲解了如何使用Spring来实现AOP编程,本博文主要讲解Spring的DAO模块对JDBC的支持,以及Spring对事务的控制...

    Java3y
  • H3C配置IPSEC ×××

    H3C配置IPSEC ×××思路跟思科差不多,无非就是命令不一样的,下面就演示一下

    py3study

扫码关注云+社区

领取腾讯云代金券