【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法

1.确保项目编码为utf8

【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法_第1张图片

【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法_第2张图片



2.确保数据库编码为utf8,以mysql为例,可到mysql目录下,my.ini文件中修改后,重启mysql服务

【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法_第3张图片

重启mysql服务方法:

【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法_第4张图片

【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法_第5张图片



3.数据库建库时,确认编码为utf-8,以使用Navicat为例

【JSP页面表单提交,controller接收为乱码,以及保存到数据库时为乱码】解决方法_第6张图片


4.jsp页面

顶端加入<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

Head中加入

表单提交方式设为"Post"


5.如果使用spring,在web.xml中加入

 
        characterEncodingFilter  
        org.springframework.web.filter.CharacterEncodingFilter  
         
            encoding  
            UTF-8  
       
 
         
            forceEncoding  
            true  
       
 
 
 
   
        characterEncodingFilter  
        /*  
 


6.在controller/action中,设置

request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8"); 


7.TOMCAT设置

conf-server.xml  

 redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/>


你可能感兴趣的:(JAVAWEB)