Mysql Workbench 和来自 jsp 的抛光语言输入

标签 mysql jsp character-encoding

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

最佳答案

您没有准确描述您看到的是哪些“奇怪的字符”,但我假设您实际上是指 Mojibake例如 ÄÄÄÅóżź 而不是 ąćęłóżź,因此不是问号,例如 ?????? 而不是 ąćęłóżź.

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

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

另见

关于Mysql Workbench 和来自 jsp 的抛光语言输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12290081/

相关文章:

java - Spring 2.5 form/jsp编码问题

java - 即使将字符集和排序规则更改为 utf8 后,也无法将中文、俄语等字符存储到 mysql 表中

java - 如何防止 Weblogic 使用 ExpressionInterceptor?

php - preg_replace() 会改变我的字符集吗?

string - 从字符串中提取单个 unicode 字符

php - 从一个表中选择匹配值到另一个表中的多个值

mysql - Sequelize 3 个表与 2 个连接表之间的位置

mysql - 当我在亚马逊 ec2 微实例中收到 "mysqld dead but subsys locked"时该怎么办?

php - 在同一个页面生成不同的表

html - 使用外部 CSS 将 JSP 导出到 Word