在tomcat或jboss的server.conf中connector加入:
URIEncoding="UTF-8"
http://www.jdon.com/testWeb/
这不是广告,因为中文问题涉及很多环节,上述源码已经根据该理论完全解决中文问题,所以如果你还是有问题,就参考上述源码。对比自己系统看看就可以了。
1、utf-8和utf8在mysql下是不一样的。起码在window里是。这个我实际使用mysql administrator设置过,设为utf-8,mysql无法启动,设为utf8,mysql正常启动,我只改动了这一个参量,因此我认为mysql无法识别utf-8。
2、"&和&的使用场合不同,了解了xml就好了。",你所说的这句话是什么意思?两个'&',我用编码查看过,一样的。
3、mysql-connection-J那个类库,3.1.17(大概是这个版本)以上的版本是有问题的。取出来是乱码,这个问题曾经困扰我很久的,最后是使用3.1.17以下版本则完全没这个问题。(这个可能我说的不太清楚,就是我浏览emu的blog的时候,他说connection-J的高级版本有问题,可以打开查看的源代码,确实有些不妥的)
可能你们这些大牛都是那种比较不拘泥于细节的人,看问题都是宏观上走,比如对象啊、领域模型啊什么的。但我个人跟喜欢注重细节。我很喜欢细节处的舒服与惊喜。
JiveJdon3源码提供下载环境JBoss 4+MySQL 4和MYSQL JDBC驱动包,这些都配套的,一个都不能少,如果你换成MYSQL 5就可能又一套设置UTF-8的方式,这些网上也有文章介绍。
关于细节和宏观我是这样看:时间精力很有限,大部分需要花费在有创造性的宏观设计工作上,如果一个细节花费太多时间,不如采取拿来主义,把别人走通的路搬过来就算了,因为Java开源世界在细节上就是这样卡人,有时一个小细节破坏整个架构。开源软件互配起来正常工作不容易的。因为各自升级都是按照自己意图行事。
总结一句:
你要保证过来的是utf-8,然后以utf-8获取,就没问题。