• spring mvc 页面编码和数据库编码 中文出现乱码


    1.前台与后台交互的时候,后台获取的中文为乱码,而且插入数据库数据也为乱码。

    修改web.xml 添加编码的过滤器,全部设置为utf-8(注意加上forceEncoding)

    <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.此时可实现后台代码获取到的中文正常,不出现乱码。但是如果插入数据库或者更新数据的时候,数据库内容为乱码的话,则为与数据库连接的时候,出现编码问题

    在jdbc的url后面加上编码设置。

    jdbc:mysql://localhost:3306/xxx?useUnicode=true&amp;characterEncoding=UTF-8

    3.如果插入数据库数据在表格里面显示还是乱码,要看数据库的属性和表的属性是否为utf-8

    所以查看mysql的编码 

    show variables like 'character%';

    发现有几个编码格式不是utf8的, 修改 

     character_set_client  gbk 
     character_set_connection gbk
     character_set_database utf8
     character_set_filesystem binary
     character_set_results gbk
     character_set_server utf8

     character_set_system utf8

     character_sets_dir C:Program FilesMySQLMySQL Server 5.5sharecharsets

    将里面的编码格式改成

    SET character_set_client='utf8';
    SET character_set_connection='utf8';
    SET character_set_results='utf8';  哪些不是就改哪,

    也可以直接修改C:Program FilesMySQLMySQL Server 5.5my.ini文

    将里面的default-character-set改成utf8,注意是utf8 而不是utf-8

    修改完之后,重启mysql服务。

    以上部分知识来自:

    http://blog.csdn.net/westsource/article/details/20922423

    http://my.oschina.net/stonezing/blog/120339

  • 相关阅读:
    CDB中plug PDB
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies (总)
    Unplugging一个PDB
    使用已有PDB克隆PDB
    Oracle 12C -- 使用seed PDB创建新的pdb
    ROW_NUMBER() OVER函数的基本用法
  • 原文地址:https://www.cnblogs.com/cuiyf/p/3685287.html
Copyright © 2020-2023  润新知