new Trainingcamp(name:"Höhentraining", region:"Alpen").save()
tr1 = Trainingcamp.findByName("Höhentraining")
tr2 = Trainingcamp.findByRegion("Alpen")
println("Tr1: " + tr1?.name)
println("Tr2: " + tr2?.name)
控制台上的输出是:
Tr1:
Tr2: H?hentraining
所以在我看来,通过保存domainobject会发生一些问题,用一个问号“?”替换特殊字符“ö”。我该如何摆脱这个问题? 先谢谢!
使用Grails 1.3.7
__ EDIT1: 我用prod run-app启动了应用程序,然后检查了pordDb.log。我找到了以下插页:
INSERT INTO TRAININGCAMP VALUES('H\ufffdhentraining','Alpen')
无论我写一个“ö”或“ü或”ä“它总是用”\ ufffd“代替它 那么,有什么建议可以解决这个问题吗?
__ EDIT2: 新见解:只有在BootStrap.groovy中保存域时才会出现问题。通过将域保存在控制器中,控制台上的输出符合预期:
Tr2: Höhentraining