1

将一些波兰语数据(ąćęłóżź 等字符)插入表格时遇到问题。我在表格中得到了一些奇怪的字符。在jsp文件中,我将页面编码设置为 utf 8。Mysql worbenchcharacter-set-server设置为utf8,数据库排序规则设置为utf8_polish_ci. 我还将 Windows 环境变量设置JAVA_TOOL_OPTIONS-Dfile.encoding=UTF8

4

1 回答 1

1

您并没有完全描述您所看到的“奇怪字符”,但我假设您实际上是指Mojibake,例如ÄÄÄÅóżź代替,ąćęłóżź因此不是问号,例如???????代替ąćęłóżź

您需要在收集 POST 请求参数request.setCharacterEncoding("UTF-8") 之前request.getParameter(name)调用,否则将使用服务器平台默认值从查询字符串中解码它们,通常是 ISO-8859-1 而不是 UTF-8。

设置请求字符编码的最佳位置是映射到覆盖所有 POST 请求的 URL 模式的servlet 过滤器。

也可以看看

于 2012-09-06T16:41:31.430 回答