原先的grails是1.2.0,从这个版本之后,我试过1.2.1,1.2.2,1.3.0,1.3.1,但都因为程序在运行时会变成乱码,而一直使用着1.2.0。
我们的TOMCAT使用的是GBK编码,GRAILS文本都是使用UTF-8编码,所以,这是产生乱码的根本原因。
最近又有grails1.3.6,更新得很快,网上找了找,有解决方案了。http://www.groovyq.net/content/grails13%E5%8F%91%E5%B8%83
在服务器上一试,果然能行。现记录如下:
重新设定System.out的编码,将下面语句加入到_GrailsInit.groovy中,或者加入工程的BootStrap.groovy的init段即可
System.out = new PrintStream(System.out, true,"GB2312");
我使用的是第二种方法,在BootStrap.groovy的init段中加入以上语句。
以前,有位高手也提到过,但他的原文是:
“如果是println打印中文乱码的话,那么就在初始化文件中增加
System.out = new PrintStream(System.out, true, "GBK")
就应该了,你测试一下吧, ”
所以我一直以为是解决打印乱码的。
在此一并谢过。
来自: http://hi.baidu.com/caihexi/blog/item/76d093a4cce0c6e59152ee15.html