这篇文章主要介绍解决MySQL+jsp出现乱码的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
成都创新互联专注于阿合奇网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供阿合奇营销型网站建设,阿合奇网站制作、阿合奇网页设计、阿合奇网站官网定制、成都微信小程序服务,打造阿合奇网络公司原创品牌,更为您提供阿合奇网站排名全网营销落地服务。
JSP页面传输到MySQL数据库时,中文为乱码(数据库中存储乱码)。下面我们就来看一下如何解决。
1、将所有的涉及到编码的都设置为 utf8(utf-8)。
设置数据库编码:
命令行执行:mysql> show variables like 'character%'; 可以查看是否为utf8
mysql> show variables like '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:\Program Files\mysql-5.6.20-winx64\share\charsets\ | +--------------------------+------------------------------------------------------+
character_set_server项不知道如何设置,不过不影响。修改数据库编码执行命令: mysql> alter database db_name character set utf8;
修改其他编码: mysql> set names 'utf8';
设置JSP页面编码:在页面顶部添加
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
修改数据库连接DriverManager.getConnection(url, usr, pwd)的url:
String url = "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出现乱码的问题的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!