• JavaWeb应用项目中文乱码的解决


     转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6383542.html

         在把web项目成功部署到云主机后,通过浏览器成功地访问到了你的网站,却发现页面里本该由servlet传过来的中文参数值显示成了 ???  乱码。这是什么原因呢?

         这可能是由于你的web项目所在系统的字符编码、tomcat的字符编码、开发项目时myeclipse的字符编码以及建立数据库时的编码不一致造成的,解决方法就是逐一设置。

         一:myeclipse设置项目编码

         点击windows,Preference,点击左侧General,workspace。设置编码为UFT8。

       

        二:项目中设置过滤器,设置request和response传递的参数为UTF8编码。

       

        别忘了在web.xml中配置这个filter哦。

        三:为云ubuntu设置中文编码

        首先,安装简体中文环境

    sudo apt-get install language-selector language-env language-pack-zh-hans

        然后,更新locale

    dpkg-reconfigure locales

        编辑本地locale文件。注意,要先获取root权限:

    sudo passwd root

        输入密码后,解开启了root权限。然后输入

    su

        输入刚才的密码,进入root权限。为locale文件赋予777权限:

    chmod 777 /etc/default/locale

        然后,编辑该文件:

    sudo vi /etc/default/locale

        按I进入编辑模式,移动光标到最下,在末尾添加

    LANG="zh_CN.UTF-8"
    LANGUAGE="zh_CN:zh"

        按Esc退出编辑模式,输入  :wq  保存并退出文档。

        然后重启你的云主机ubuntu,使配置生效。若你打开shell窗口就会发现有中文了,说明配置成功。

        四:配置mysql字符编码

        1:修改mysql配置文件

    vi /etc/mysql/mysql.conf.d/mysqld.cnf

        找到  [mysqld]  节点,在其下面追加

    character-set-server=utf8
    collation-server=utf8_general_ci

        重启mysql,使配置生效

    /etc/init.d/mysql restart

        2:设置所用数据库字符编码

    mysql> alter database 你的数据库名 character set utf8;

         当然,你也可以进入所使用的数据库,一项项设置:

    mysql>use 数据库名;
    mysql> SET character_set_client=utf8;
    mysql> SET character_set_connection = utf8;
    mysql> SET character_set_database = utf8;
    mysql> SET character_set_results = utf8;
    mysql> SET character_set_server = utf8;
    mysql> SET collation_connection = utf8;
    mysql> SET collation_database = utf8;
    mysql> SET collation_server = utf8;

        五:配置tomcat编码

        用  su  命令登录root权限,cd到tomcat的conf目录下。然后为server.xml文件赋予777权限。

    chmod 777 server.xml

        打开server.xml:

    vi server.xml

        按I进入编辑模式,找到<Connector   >结点,添加 URIEncoding="UTF-8"useBodyEncodingForURI="true" 两行,如下图:

        在下面,还有一处<Connector    >,添加 URIEncoding="UTF-8",如下图:

        按Esc退出编辑模式,输入  :wq   保存并退出。

        重启tomcat使配置生效。

    经过以上5步,基本上统一了项目涉及的所有关于编码的地方,中文参数值乱码的问题就解决啦~

      

       

  • 相关阅读:
    Key ssd_300_vgg/block3_box/L2Normalization/gamma not found in checkpoint的解决方案
    微调(Fine-tune)原理
    TensorFlow的数据读取机制
    卷积神经网络CNN识别MNIST数据集
    TensorFlow基本计算单元与基本操作
    一些小软件闪退的解决方案
    机器学习之SVM调参实例
    机器学习之支持向量机算法(二)
    机器学习之支持向量机算法(一)
    机器学习项目实战----新闻分类任务(二)
  • 原文地址:https://www.cnblogs.com/ygj0930/p/6383542.html
Copyright © 2020-2023  润新知