Questions: When the JSP page is transferred to the MySQL database, the Chinese is garbled (garbled in the database).
Workaround:
1. Set all the related encodings to UTF8 (utf-8).
Set database encoding: command line execution:mysql> show variables like ' character% '; You can see if it is 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\ |+--------------------------+------------------------------------------------------+
The Character_set_server item does not know how to set it, but does not affect it. Modify database Encoding execution command: mysql> alter db_name character set UTF8;
Modify other encodings: mysql> set names ' UTF8 ';
Set JSP page encoding: Add at the top of the page
<%@ page language= "java" contenttype= "text/html; Charset=utf-8 "pageencoding=" UTF-8 "%>
Modify the URL of the database connection drivermanager.getconnection (URL, usr, pwd):
String url = "Jdbc:mysql://localhost:3306/db_name?useunicode=true&characterencoding=utf-8";
2, Post transmission mode
Add the following code at the top of the send and receive pages:
1 <% request.setcharacterencoding ("UTF-8"2 response.setcharacterencoding ( "UTF-8"3 response.setcontenttype ("text/html; Charset=utf-8 "); 4 %>
( about Get method, that is, the address bar parameter does not know how to modify.) It seems necessary to modify Tomcat's Server.xml file in uriencoding= "UTF-8")
Jsp+mysql Chinese garbled problem