>>有个疑问,我看mysql数据库当前采用的字符集是Latin-1,它支持的字符集包括GBK,就是说把GBK编码的字符送进字符集为Latin-1的mysql数据库,mysql会自动处理这样的转换
数据库本身不做任何转换。由于数据库一般都支持双字节,所以即使数据库默认字符集是Latin-1,它也能处理GBK编码的字符串。
Java GUI如果通过RMI和App Server通讯(例如调用EJB),也不用考虑字符串处理的问题,因为JVM之间序列化对象,对象之内的字符串都是UTF-8编码。
Java GUI如果通过SOAP和App Server通讯,看SOAP调用的XML信息用什么编码,如果也是UTF-8编码,也没有问题,或者采用客户端操作系统默认的编码也可以,如果是其他编码,客户端就必须自己编程进行转换编码。此时编码问题主要和服务端使用的XML解析器有关系,我没有仔细研究过。
Java GUI如果通过HTTP和Servlet通讯的话,客户端需要编程模拟浏览器,我还没有研究过这种编程模式下的编码问题。