• 中文乱码问题解决方法总结


    1 jsp页面显示乱码

    jsp页面首行的

    1  <%@ page language="java" import="java.util.*" contentType="text/html;charset=gb18030"%>

    中的字符集charset改为“GB18030”“GB2312”

    2 jsp页面传输乱码

     在获取参数的jsp页面将获取到的值进行相应的转码

    如:

    1 String name=request.getParameter("name");
    2 name=new String(name.getBytes("UTF-8859-1"),"GB18030");

    前提是要传参的jsp页面和获取参数的页面的编码集保持一致。

    3 jsp与数据库(mysql)进行数据处理时出现的中文乱码

       3.1 可以将MYSQL的一个文件my.ini中的default-character-set=latin1character-set-server=latin1

             对应修改为default-character-set=gbk character-set-server=gbk

        3.2 MYSQL文件下的data文件中的db.opt文件的内容修改为: 

             default-character-set=gbk

             default-collation=gbk_chinese_ci

           MYSQL----data----db.opt

        3.3将涉及到的数据库的基字符集更改为:gbk  数据库排序规则选择 gbk_chinese_ci

            即对应数据库--右键--更改数据库

        3.4在提交数据的jsp页面将字符集改为charset=gb2312,在获取数据的jsp页面将字符集改为charset=2312

            并在接受数据之前添加

           request.setCharacterEncoding("gbk");

           response.setContentType("text/html;charset=GB2312");

       3.5在对应的java文件的与数据库有关的相关方法中添加

        PreparedStatement pstm=conn.prepareStatement("SET NAMES GBK");

        pstm.executeUpdate();

    通过以上几种方式基本可以将在开发过程中遇到的乱码问题进行解决,有些内容参考了其他人的文档,但这是自己在开发过程中遇到的问题的总结。

    一分辛苦一分才
  • 相关阅读:
    一个故事看懂CPU的SIMD技术
    MySQL 表数据多久刷一次盘?
    java高级用法之:无所不能的java,本地方法调用实况
    java高级用法之:调用本地方法的利器JNA
    网络协议之:socket协议详解之Datagram Socket
    网络协议之:socket协议详解之Socket和Stream Socket
    netty系列之:java中的base64编码器
    网络协议之:socket协议详解之Unix domain Socket
    git 常用命令
    在线curl转换
  • 原文地址:https://www.cnblogs.com/JoanLin-workNotes/p/3751878.html
Copyright © 2020-2023  润新知