为保证Freemarker中文乱码问题配置有三:
一、web.xml中加入编码过滤器
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/mvc-start.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <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> </web-app>
二、Freemarker视图配置中设置默认编码类型:defaultEncoding
<!-- FreeMarker环境配置 --> <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"> <!-- freemarker模板位置 --> <property name="templateLoaderPath" value="/WEB-INF/freemarker/"/> <property name="freemarkerVariables"> <map> <entry key="xml_escape" value-ref="fmXmlEscape" /> </map> </property> <property name="freemarkerSettings"> <props> <prop key="defaultEncoding">UTF-8</prop> </props> </property> </bean>
三、freemarker视图解析器中配置contentType
<!-- FreeMarker视图解析 --> <bean id="freeMarkerViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"> <!-- <property name="cache" value="true"/> --> <property name="prefix" value="/"/> <property name="suffix" value=".xhtml"/> <property name="contentType" value="text/html" /> <property name="order" value="0"></property> </bean>
四、freemarker页面头部设置<meta>标签申明字符集
<html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>用户列表</title> </head> </html>
以上四个地方配置好后,乱码自动消失!OO
相关推荐
在处理Freemarker模板引擎时,中文乱码问题是一个常见的挑战,尤其是在国际化应用中。Freemarker是一款功能强大的...通过上述方法,可以有效地解决Freemarker中出现的中文乱码问题,提高Web应用的稳定性和用户体验。
本实例将引导你入门Freemarker,解决在Eclipse环境下使用Java编译时可能出现的乱码问题,并确保使用UTF-8编码方式进行处理。 **1. Freemarker简介** Freemarker是一个基于模板的开源Java库,它与Spring MVC、Struts...
在压缩包文件"FreeMarker_03"中,可能包含了更详细的代码示例或配置示例,可以帮助你更好地理解和实践上述解决方案。记得解压并仔细研究其中的内容,结合博文链接中的信息,相信你能对Freemarker的乱码问题有深入的...
常见问题与解决方案** - 如何解决乱码问题。 - 如何提高性能。 - 如何正确使用内置标签。 通过以上详细解释,读者可以更好地理解Freemarker的核心概念、指令用法以及一些常见的技巧和注意事项,从而更高效地...
以上是通过Freemarker模板引擎生成Word文档的基本知识点,包括了选择技术的理由、实现方案、遇到的难点及其解决方案、以及在不同环境下生成PDF文档的方法。这些知识点对于希望使用Freemarker模板引擎自动化生成文档...
7. **解决乱码问题**:邮件内容的编码是常见的乱码来源。在JavaMail中,可以使用 `MimeMessage` 的 `setEncoding` 方法设置邮件的字符集,确保内容正确显示。同时,对于非ASCII字符,如中文,也需要确保邮件头部(如...
然而,在实际开发过程中,我们可能会遇到一些问题,比如在处理`hbm.xml`文件中的中文注释时出现乱码,或者希望自动生成的实体类中包含有详细的注释。本文将详细介绍如何利用`Hibernate-tools`来解决这些问题,以`...
本项目“生成WORD freemarker导出WORD”正是这样一个解决方案,它允许开发者使用FreeMarker模板来创建和导出Microsoft Word文件。 首先,我们要理解FreeMarker的工作原理。FreeMarker是一个基于Java的模板语言,它...
同时,该内容也可能涉及到对于PDF文档生成工具的一般性了解,以及在遇到中文显示问题时,如何进行调试和问题解决的技巧。由于正文内容中仅有重复性的测试文本,并未提供实际的修改方法,因此无法从现有信息中提炼出...
在Java开发中,有时我们需要将数据导出为各种格式的文档,例如Word。...通过理解`Freemarker`的FTL语法、配置和数据模型,以及如何使用Apache POI操作Word文档,你可以创建出满足各种需求的Word导出解决方案。
本学习文档主要涵盖Freemarker的一些基础概念以及常用命令符号,并探讨了模板装载方法和解决输出中文乱码的问题。 #### 二、Freemarker命令符号详解 在Freemarker中,命令符号是模板语言的核心组成部分之一,它们...
然而,在生成PDF文档时,如果涉及到中文内容,可能会遇到显示乱码或者不支持的问题。本文将深入探讨如何解决Maven站点生成PDF时的中文支持问题。 首先,我们需要理解Maven生成站点的流程。Maven站点插件(maven-...
同时,它也涉及到了拦截器的使用以及中文乱码问题的解决方案,这些都是开发过程中常见的需求和挑战。 首先,Spring Boot默认并不支持JSP,因为它更倾向于使用模板引擎如Thymeleaf、Freemarker等。但JSP作为传统的...
解决方案是在生成PDF时指定包含中文字符的字体,例如Arial Unicode MS或SimSun。至于CSS样式问题,flying-saucer虽然支持大部分CSS2,但可能不完全兼容CSS3。因此,保持CSS代码简洁并遵循标准可以提高兼容性。使用...