天锁卍斩月 2014-03-27 08:23 采纳率: 0%
浏览 712

jsp到mysql的乱码问题

为什么我jsp,mysql,编码方式都设为utf-8,并且获取request中也用了request.setCharacterEncoding("utf-8");原本装myeclipse的时候也把能设置的编码方式全都设置了utf-8,为什么存入数据库的中文还是乱码?更搞笑的是,同样获取的两个中文字符,一个是乱码,一个不是乱码。。。。我快崩溃了

  • 写回答

1条回答

  • 混分吴老师 2023-04-07 20:11
    关注

    JSP 到 MySQL 的乱码问题通常是由于字符集不一致导致的。以下是一些可能的解决方案:

    1. 设置连接字符集:在连接 MySQL 数据库时,可以设置连接字符集,例如:

      String url = "jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=utf-8";
      Connection conn = DriverManager.getConnection(url, "username", "password");
      

      这样设置可以确保在传输数据时使用 UTF-8 编码,避免乱码问题。

    2. 设置 JSP 页面字符集:在 JSP 页面的头部设置字符集,例如:

      <%@ page contentType="text/html; charset=UTF-8" %>
      

      这样设置可以确保在 JSP 页面中使用 UTF-8 编码,避免乱码问题。

    3. 设置 MySQL 数据库字符集:可以在 MySQL 中设置数据库和表的字符集,例如:

      CREATE DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
      

      这样设置可以确保在存储数据时使用 UTF-8 编码,避免乱码问题。

    4. 对于已有的乱码数据,可以使用 MySQL 的 CONVERT 函数进行转换,例如:

      SELECT CONVERT(column_name USING utf8) FROM table_name;
      

      这样可以将指定列的数据从当前字符集转换为 UTF-8 编码。

    评论

报告相同问题?

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型