zoukankan      html  css  js  c++  java
  • 关于乱码的问题

    今天又遇到一个乱码的问题,现在做一个简单的总结:

    1,如果你测试的时候发现前端传过去的值没有乱码,就检查后端是否乱码,通常是打断点查看。

    如果发现传入后端的 值乱码了,有好几种解决办法,下面主要写几个简单的解决办法:

    一,request.setCharacterEncoding("utf-8");//必须写在第一位,设置这样方式去读。这样中文就能够读取出来了,但是需要注意。表单的发送方式必须是method='post'

      response.setContentType("text/html;charset=utf-8");//设置传过去的页面显示的编码

      String name=req.getParameter("username");

      String pwd=req.getParameter("pwd");

    或者针对某个参数使用str= java.net.URLDecoder.decode(str,"UTF-8"); 进行乱码处理

    二,需要修改web.xml里面的内容,就是说,字符编码从xml接收过来。需要在xml文件中配置参数

    <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
    <param-name>forceEncoding</param-name>
    <param-value>true</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>

    2,如果你发现前端,后端的值都没有乱码,但是插入到mysql数据库后乱码了,那是因为你的配置中少了一行代码,配置参考如下:

    jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8

  • 相关阅读:
    创建新用户
    发生tcp丢包(拥堵、超时)重传
    centos7装机和初步运维
    论上山和下山哪个费力
    一、Linux简介
    服务器设置FTP
    自定义部署资源服务器
    代码管理工具 Git
    远程连接工具rdcman
    dubbo学习(八)dubbo项目搭建--消费者(服务消费者)
  • 原文地址:https://www.cnblogs.com/zhangliang88/p/10853906.html
Copyright © 2011-2022 走看看