1

我有一个 utf-8 mysql 数据库。

在我的 jsp 文件中,我使用:

 <%@ page pageEncoding="UTF-8"%>
 ...
 <meta http-equiv="content-type" content="text/html; charset=utf-8" />

我的浏览器编码是 UTF-8。

在一个表单中,我有一个输入文本。

当我提交表单时,如果输入文本的值包含,例如:

à è é à ò ù €

它在数据库中插入了一个“错误”的字符串。

提交后,如果我打印输入的文本内容已经包含“奇怪”的字符。

当我在任何地方使用 utf-8 时,我都无法理解我必须改变什么。

4

1 回答 1

3

首先,DB 编码为 UTF-8 是不够的,您还应该通过附加useEncoding=true&characterEncoding=UTF-8到 JDBC URL 来在驱动程序连接处指定编码

其次,页面编码不会影响浏览器对文本进行编码的方式。您还应该注意请求级别的编码:request.setCharacterEncoding("UTF-8")

于 2013-03-28T14:54:59.117 回答