如果你用的是utf-8编码,在grails中使用freemarker出现乱码,可以用以下方法解决。
打开C:\Documents and Settings\Administrator\.grails\1.1.1\projects\monitor\plugins\freemarker-0.1.1\FreemarkerGrailsPlugin.groovy文件(我的项目是monitor),把doWithSpring 方法改成以下
def doWithSpring = {
boolean developmentMode = !application.warDeployed
freemarkerConfig(org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer) {
defaultEncoding="utf-8"
if(developmentMode) {
templateLoaderPath="file:${BuildSettingsHolder.settings.baseDir.absolutePath}/grails-app/views"
} else {
templateLoaderPath="/WEB-INF/grails-app/views"
}
}
freemarkerViewResolver(org.springframework.grails.freemarker.GrailsFreeMarkerViewResolver) {
prefix = ''
suffix = '.ftl'
order = 10
contentType="text/html; charset=utf-8"
}
}
这样即可解决freemarker乱码问题。已经改过的freemarker插件在附件中。
当然,你需要在eclipse中把freemarker文件的编码设为utf-8,同时在页面头中加上<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
其次,在Freemarker中有一些其他重要的配置,比如使用webwork时,可以用一个名为freemarker.properties的文件进行以下设定:
#locale=utf-8
template_update_delay=5
datetime_format=yyyy-MM-dd HH:mm:ss
date_format=yyyy-MM-dd
time_format=HH:mm:ss
number_format=0.######;
boolean_format=true,false
auto_import="/WEB-INF/ftl_lib/ponyjava.com/index.ftl" as p, "/WEB-INF/ftl_lib/jeecms/index.ftl" as cms
whitespace_stripping=true
#default_encoding=UTF-8
tag_syntax=auto_detect
url_escaping_charset=UTF-8
#struts.freemarker.templatesCache=true
#template_update_delay=60000
那么在Grails中要进行以上设定,应该怎么做呢?
首先freemarker.properties配置文件是不能用了,因为它是webwork才会加载的文件。我们可以通过设置FreemarkerGrailsPlugin.groovy文件来达到配置freemarker的效果。比如:
def doWithSpring = {
boolean developmentMode = !application.warDeployed
freemarkerConfig(org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer) {
[color=red]freemarkerSettings=["number_format":"#","date_format":"yyyy-MM-dd" ][/color] defaultEncoding="utf-8"
if(developmentMode) {
templateLoaderPath="file:${BuildSettingsHolder.settings.baseDir.absolutePath}/grails-app/views"
} else {
templateLoaderPath="/WEB-INF/grails-app/views"
}
}
freemarkerViewResolver(org.springframework.grails.freemarker.GrailsFreeMarkerViewResolver) {
prefix = ''
suffix = '.ftl'
order = 10
contentType="text/html; charset=utf-8"
}
}
上述红字设置了数字格式永远不加","号(freemarker默认大数字每3位加一个逗号),以及日期格式。
分享到:
相关推荐
总结来说,这个压缩包内容可能包括如何在Grails项目中配置和使用FreeMarker,以及如何处理领域类之间的关系映射,特别是“one2many”关系。通过学习这些知识,开发者可以更有效地构建Grails应用,并利用FreeMarker...
3. **配置Grails环境**:安装插件后,需要在Eclipse中配置Grails的路径,这样Eclipse才能找到Grails命令行工具。这通常在"Eclipse Preferences" -> "Grails"中设置。 4. **创建Grails项目**:现在,你可以通过...
为了在Grails环境中方便地使用SVN,我们需要安装一个支持SVN的客户端插件,这就是Subclipse。本指南将详细介绍如何在Grails环境中安装Subclipse插件。 首先,启动你的Eclipse集成开发环境(IDE),这是Grails通常...
### Groovy和Grails配置方法 #### 一、Groovy与Grails简介 Groovy是一种强大的面向对象编程语言,它运行在Java平台上,并且能够直接与Java代码进行交互。Groovy支持函数式编程特性,拥有丰富的语法糖以及简洁的...
二、Grails中文文档的价值 1. 学习入口:对于中文开发者来说,中文文档降低了学习Grails的门槛,帮助理解和掌握Grails的基本概念、框架结构、开发工具以及最佳实践。 2. 快速上手:文档通常包含安装指南、教程、...
Grails Shiro UI 插件是为基于Groovy的Grails框架开发的一款强大而易用的安全管理插件,它集成了Apache Shiro安全框架,为开发者提供了一整套用户认证和授权的解决方案。Apache Shiro是一款轻量级、全面的Java安全...
总结,配置Grails使用MongoDB数据库主要涉及以下几个步骤:安装MongoDB,添加MongoDB插件依赖,配置数据库连接,创建数据模型,实现业务服务,以及创建控制器处理请求。通过这样的配置和实现,我们就能在Grails中...
**Grails项目配置详解** Grails是一个基于Java平台的开源Web应用框架,它采用Groovy语言,提供了MVC(Model-View-Controller)架构模式,简化了开发过程。本项目是一个关于Grails的演示示例,特别关注了数据模型的...
下面我们将详细介绍如何配置Eclipse插件Grails以及Groovy的相关知识点。 首先,安装Groovy和Grails插件是至关重要的。你可以通过Eclipse的内置Marketplace来查找并安装Groovy和Grails Development Tools (GDT)。...
7. 阅读Grails中文API文档,解决实际开发中的问题。 在学习过程中,还可以参考在线教程、视频课程和社区论坛,如Stack Overflow和Grails官方社区,以便获取更多实践经验和帮助。 总之,Grails作为Java平台上的快速...
总结,Grails Acegi 0.5插件是Grails框架下的一种重要安全解决方案,它引入了Spring Security的经典功能,为Grails开发者提供了强大的身份验证和授权手段。虽然随着时间的推移,新的安全框架和插件不断涌现,但了解...
文档涵盖了从安装、配置、Web开发、服务层、测试、国际化、安全到插件使用等多个方面的详细介绍,是Grails新手学习的宝贵资料。通过这份文档,开发者可以系统地学习Grails框架,并在实际开发中快速应用所学知识。
处理完这些基础配置后,我们需要解决Grails的资源管理问题。在`grails-app/conf/spring`目录下的`resources.groovy`文件,应该添加包声明(`package spring`),然后将其剪切到`grails-app/conf`目录下,以确保...
总之,《Grails中文参考手册》覆盖了从安装、创建应用到部署和配置的全过程,对于希望掌握Grails框架的开发者来说,是一份不可或缺的学习资源。通过深入学习和实践,你将能够充分利用Grails的强大功能,快速构建出高...
1. **环境配置**:首先,开发者需要了解如何安装和配置Grails环境,包括Groovy SDK、Grails SDK以及相关的IDE支持,如IntelliJ IDEA或Eclipse的Grails插件。 2. **命令行工具**:Grails提供了强大的命令行工具,...
《Grails 中文参考手册》是一本全面介绍Grails框架的指南,旨在帮助开发者快速上手并深入理解Grails的各个核心概念和技术。Grails是一个基于Groovy语言的开源Web应用框架,它提供了高效的开发环境和强大的功能,使得...
"Grails 中文参考手册" 是一套详细的 Grails 学习资料,涵盖了框架的所有核心组件、最佳实践和使用方法,帮助开发者快速掌握 Grails 开发技能。 总之,Grails 是一个强大而灵活的 Web 开发框架,结合 Groovy 的优点...
5. **插件系统**:Grails的插件系统是其灵活性的一大体现,允许开发者复用和扩展功能。例如,有用于安全性的spring-security-core插件,用于邮件发送的mail插件,以及用于RESTful API的rest-api-doc插件等。这些插件...
1. **自动化配置和约定优于配置**:Grails 提供了许多默认配置,例如数据库连接、URL映射等,开发者只需按照约定编写代码即可,减少了配置工作。 2. **GORM(Grails Object Relational Mapping)**: GORM 是Grails...