这篇文章主要介绍解决mysql+jsp出现乱码的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

JSP页面传输到MySQL数据库时,中文为乱码(数据库中存储乱码)。下面我们就来看一下如何解决。

1、将所有的涉及到编码的都设置为 utf8(utf-8)。

设置数据库编码:

命令行执行:mysql> show variables like 'character%'; 可以查看是否为utf8

mysql>showvariableslike'character%';+--------------------------+------------------------------------------------------+|Variable_name|Value|+--------------------------+------------------------------------------------------+|character_set_client|utf8||character_set_connection|utf8||character_set_database|utf8||character_set_filesystem|binary||character_set_results|utf8||character_set_server|latin1||character_set_system|utf8||character_sets_dir|D:\ProgramFiles\mysql-5.6.20-winx64\share\charsets\|+--------------------------+------------------------------------------------------+

character_set_server项不知道如何设置,不过不影响。修改数据库编码执行命令: mysql> alter database db_name character set utf8;

修改其他编码:mysql> set names 'utf8';

设置JSP页面编码:在页面顶部添加

<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%>

修改数据库连接DriverManager.getConnection(url, usr, pwd)的url:

Stringurl="jdbc:mysql://localhost:3306/db_name?useUnicode=true&characterEncoding=utf-8";

2、post传输方式

在发送页面和接收页面顶部都添加以下代码:

<%request.setCharacterEncoding("UTF-8");response.setCharacterEncoding("UTF-8");response.setContentType("text/html;charset=utf-8");%>

以上是解决mysql+jsp出现乱码的问题的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!