为什么浏览器会显示MySQL数据库中的问号?

时间:2016-04-23 12:31:15

标签: java mysql character-encoding

所以我使用的语言是Java,使用JSP-s和Servlets我试着给html它应该打印什么,但它只是打印问号。我的数据是在MySQL中。我试图将所有内容更改为UTF-8,包括tomcats,xml和html文档,JSP和MySQL工作台的字符编码,但它没有帮助。一个重要的符号 - System.out.println(...);函数正确地在控制台中打印文本(如预期的那样)。请帮忙。

1 个答案:

答案 0 :(得分:1)

  • 客户端中的字节必须是utf8编码的。
  • 连接必须确定这一事实。对于服务小组resource.setContentType ("text/html;charset=utf-8");
  • 表格/列必须为CHARACTER SET utf8(或utf8mb4)。
  • 输出必须声明utf8。对于JSP:<%@ page contentType="text/html; charset=UTF-8" %>

对于多个问号,通常的缺陷在表定义中。或者,源字节和连接可能有问题。

要检查表格中的内容,请提供一些非英语字符的输出:

SELECT col, HEX(col) FROM ...