博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring freemarker页面乱码解决
阅读量:4156 次
发布时间:2019-05-26

本文共 1411 字,大约阅读时间需要 4 分钟。

    在开发过程中遇到乱码十分的头痛,如果你在开发过程中也遇到了乱码,本文或许对你有些帮助。

乱码场景:

      项目采用Spring框架,视图层使用freemarker,当点击某个链接时redirect到某个Action作些业务逻辑处理,然后再重定向到一个html页面,但是重定向到html页面时,html里面的中文全部变成乱码,在web.xml加过滤器,html、java编码都按UTF-8写还是不起作用,偶尔发现在Action里,加这句话可使页面恢复正常

  response.setContentType("text/html;charset=utf-8");

如果每个Action都这样写很是繁琐,修改freemarker配置加入描红的代码

 

<bean id="freeMarkerViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">

  <property name="requestContextAttribute" value="rc"/>
    <property name="prefix" value=""/>
  <property name="suffix" value=".html"/>
  <property name="cache">
     <value>false</value>
  </property>
  <property name="contentType" value="text/html" />
  <property name="exposeSpringMacroHelpers" value="true"/>
    <property name="viewClass">
        <value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>
    </property>
 </bean> 

 

在html头文件中加入<meta http-equiv="content-type" content="text/html; charset=UTF-8">然后在web.xml再配置下过滤器,将所有编码都统一,这样它就甭想再乱码了

 

 <filter>

  <filter-name>encodingFilter</filter-name>
  <filter-class>
   org.springframework.web.filter.CharacterEncodingFilter
  </filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
  <init-param>
   <param-name>forceEncoding</param-name>
   <param-value>true</param-value>
  </init-param>
 </filter>
 <filter-mapping>
        <filter-name>encodingFilter</filter-name>    
        <url-pattern>/*</url-pattern>
    </filter-mapping>

转载地址:http://jjkxi.baihongyu.com/

你可能感兴趣的文章
Qt文件夹选择对话框
查看>>
DeepLearning tutorial(7)深度学习框架Keras的使用-进阶
查看>>
第三方SDK:JPush SDK Eclipse
查看>>
第三方开源库:imageLoader的使用
查看>>
Android studio_迁移Eclipse项目到Android studio
查看>>
转载知乎-前端汇总资源
查看>>
JavaScript substr() 方法
查看>>
JavaScript slice() 方法
查看>>
JavaScript substring() 方法
查看>>
HTML 5 新的表单元素 datalist keygen output
查看>>
(转载)正确理解cookie和session机制原理
查看>>
jQuery ajax - ajax() 方法
查看>>
将有序数组转换为平衡二叉搜索树
查看>>
最长递增子序列
查看>>
从一列数中筛除尽可能少的数,使得从左往右看这些数是从小到大再从大到小...
查看>>
判断一个整数是否是回文数
查看>>
腾讯的一道面试题—不用除法求数字乘积
查看>>
素数算法
查看>>
java多线程环境单例模式实现详解
查看>>
将一个数插入到有序的数列中,插入后的数列仍然有序
查看>>