美文网首页IT技术篇java学习笔记
解决freemarker的ftl文件中文乱码问题

解决freemarker的ftl文件中文乱码问题

作者: 菜菜___ | 来源:发表于2019-10-18 16:24 被阅读0次

    最近使用freemarker模板引擎输出html时,发现java服务端返回的中文数据在ftl文件中显示正常,但是ftl文件写死的中文出现乱码的情况。
    1.首页ftl文件设置了网页的编码如下:

     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    

    2.spring-mvc关于freemarker的配置如下,需要在freemarker的配置里加上
    <property name="contentType" value="text/html;charset=UTF-8"></property>

    <!-- freemarker的配置 -->
    <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">    
           <property name="templateLoaderPath">    
               <value>/WEB-INF/views/</value>
           </property>
           <!--设置编码 -->
          <property name="defaultEncoding" value="UTF-8" />
          <!-- 页面数值的显示格式,避免1000显示成1,000 -->
          <property name="freemarkerSettings">
              <props>
                  <prop key="number_format">#</prop>
              </props>
          </property>
    </bean>   
    
     <!--FreeMarker视图配置-->
    <bean id="ftlviewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
           <property name="suffix" value=".ftl" />   
           <property name="order" value="0"/>
           <property name="contentType" value="text/html;charset=UTF-8"/>
           <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>
          <!-- 方便页面获得项目的绝对路径 -->
           <property name="requestContextAttribute" value="request" />
    
    </bean>
    

    这样就解决了乱码的问题。
    原文作者技术博客:https://www.jianshu.com/u/ac4daaeecdfe

    相关文章

      网友评论

        本文标题:解决freemarker的ftl文件中文乱码问题

        本文链接:https://www.haomeiwen.com/subject/dvemmctx.html