页面传参字符乱码问题出现的原因以及解决方式

我们一般在做登陆的时候会用到表单的提交,这时如果我们传的参数又中文,有时候会发现到后台接收的时候会出现乱码,那么这是为什么?

原因:我们前端传的参数的编码与后台tomcat服务器解析的方式(理解成解码)不一样

比如我们前端编码用的是UTF-8去传到后台

页面传参字符乱码问题出现的原因以及解决方式_第1张图片

这时候后台接收就会又问题,为何呢?因为后台服务器默认的解码是ISO8859-1,那么怎么解决呢,很简单,如果我们是post请求的情况下,我们在项目web.xml中配置编码过滤器,而这个就是spring为我们提供的一个过滤器org.springframework.web.filter.CharacterEncodingFilter,我们只要把编码的方式改成UTF-8即可解决


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

不过spring这个提供是在post请求的时候,我们要是在get的请求时候也带中文的参数还是会出现乱码,这个时候我们就去根源解决,改变tomcat配置中解码的方式

页面传参字符乱码问题出现的原因以及解决方式_第2张图片

页面传参字符乱码问题出现的原因以及解决方式_第3张图片 

Ok了,这样页面用utf-8请求的乱码问题就解决了

你可能感兴趣的:(学习笔记)