1、如果提交方式为post,想不乱码,只需要在服务器端设置request对象的编码即可,客户端以哪种编码提交的,服务器端的request对象就以对应的编码接收,比如客户端是以UTF-8编码提交的,那么服务器端request对象就以UTF-8编码接收(request.setCharacterEncoding("UTF-8"))

2、如果提交方式为get,设置request对象的编码是无效的,request对象还是以默认的ISO8859-1编码接收数据,因此要想不乱码,只能在接收到数据后再手工转换,步骤如下:

1).获取获取客户端提交上来的数据,得到的是乱码字符串,data="???è?????"

String data = request.getParameter("paramName");

2).查找ISO8859-1码表,得到客户机提交的原始数据的字节数组

byte[] source = data.getBytes("ISO8859-1");

3).通过字节数组以指定的编码构建字符串,解决乱码

data = new String(source, "UTF-8");

通过字节数组以指定的编码构建字符串,这里指定的编码是根据客户端那边提交数据时使用的字符编码来定的,如果是GB2312,那么就设置成data = new String(source, "GB2312"),如果是UTF-8,那么就设置成data = new String(source, "UTF-8")

3、客户端想传输数据到服务器,可以通过表单提交的形式,也可以通过超链接后面加参数的形式,例如:

1 点击

点击超链接,数据是以get的方式传输到服务器的,所以接收中文数据时也会产生中文乱码问题,而解决中文乱码问题的方式与上述的以get方式提交表单中文数据乱码处理问题的方式一致,如下所示:

1 String name = request.getParameter("name");

2 name =new String(name.getBytes("ISO8859-1"), "UTF-8");

另外,需要提的一点就是URL地址后面如果跟了中文数据,那么中文参数最好使用URL编码进行处理,如下所示:

1 ">点击

java表单 mysql 乱码_java web当中表单提交到后台出现乱码的解决方法相关推荐

  1. java socket建立长连接_Java Web项目中使用Socket通信多线程、长连接的方法

    很多时候在javaweb项目中我们需要用到Socket通信来实现功能,在web中使用Socket我们需要建立一个监听程序,在程序启动时,启动socket监听.我们的应用场景是在java项目中,需要外接 ...

  2. eclipse部署的web项目没有添加到Tomcat的webapps目录下解决方法

    eclipse部署的web项目没有添加到Tomcat的webapps目录下解决方法 参考文章: (1)eclipse部署的web项目没有添加到Tomcat的webapps目录下解决方法 (2)http ...

  3. Web服务的性能,和BCrypt性能问题的解决方法

    Web服务的性能,和BCrypt性能问题的解决方法 参考文章: (1)Web服务的性能,和BCrypt性能问题的解决方法 (2)https://www.cnblogs.com/lixiong/arch ...

  4. mysql: “Warning: Using a password on the command line interface can be insecure.“ 解决方法

    mysql: "Warning: Using a password on the command line interface can be insecure." 解决方法 参考文 ...

  5. java动态加载jar时,jar中还有第三方jar无法加载的解决方法

    java动态加载jar时,jar中还有第三方jar无法加载的解决方法 当java插件化开发时,即一个java程序在运行的情况下动态加载另一个jar,网上大多数的方法如下 public static v ...

  6. java输出的汉字变成乱码_Java Web项目中解决中文乱码方法总结

    一.了解常识: 1.UTF-8国际编码,GBK中文编码.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.web tomcat:默认是ISO8859-1,不 ...

  7. java工程编辑器中文乱码_Java Web开发项目中中文乱码解决方法汇总

    Java Web项目中,解决中文乱码方法总结如下 第一种情况:调用jsp页面中文显示乱码问题描述:通过浏览器调用jsp页面,在浏览器中显示的中文内容出现乱码. 解决方法:首先确认本jsp在编辑器中保存 ...

  8. java 问号乱码_Java web中常见编码乱码问题(一)

    最近在看Java web中中文编码问题,特此记录下. 本文将会介绍常见编码方式和Java web中遇到中文乱码问题的常见解决方法: 一.常见编码方式: 1.ASCII 码 众所周知,这是最简单的编码. ...

  9. ajax如何提交多表单的值_Java Web初学者探索学习笔记7—矛盾解决方案:表单标签验证与ajax提交...

    这段时间前端开发过程中,关于<form>表单下的输入框信息验证和数据提交问题出现矛盾. 问题描述: 表单下利用<input type="text" pattern ...

最新文章

  1. Jemeter组件介绍(四)
  2. c语言如何传递结构体指针,注意使用结构体指针给函数传递参数。
  3. 共享内存 传一个类指针_共享内存介绍:Shared Memory
  4. 哪些情况不适合建索引
  5. asyncio协程与并发
  6. 计算机网络动画是什么软件,把动漫人头p人身上的软件叫什么 软件介绍
  7. Go 语言基础(七) 之 并发和网络
  8. SIP、SAP与SDP
  9. 200 多个 npm 包被攻击,Azure 开发者请注意
  10. 20 年“码龄”的老程序员如何看编程发展?
  11. 表白代码大全,快来向你的ta表白吧~~~
  12. robotframework3.2.1——导入selenium2Library库后没有open browser关键字
  13. 磁珠的原理与应用注意事项
  14. 媒体:28省份已开展不动产登记机构整合工作
  15. IEEE 投稿参考文献格式bib
  16. Golang 逃逸分析
  17. 结构体初识———结构体成员
  18. 万兴科技开启公司史上最大规模秋招,拟在长沙组建千人团队
  19. ctfshow密码easyrsa5
  20. 计算机与网络应用word解析,计算机二级word真题:《计算机与网络应用》教材的编排...

热门文章

  1. R learning 十八讲 0018-R语言绘图基础
  2. 一种基于三代PacBio测序数据的补洞方法
  3. mysql 数据库异常大_Mysql连接数据库异常汇总【必收藏】
  4. librosa.stft() 短时傅里叶变换
  5. python HDF5 h5py 的用法
  6. 怎样理解公钥,私钥和数字签名
  7. 三十、赫夫曼树的设计与代码实现
  8. 【自然语言处理】正向、逆向、双向最长匹配算法的 切分效果与速度测评
  9. 语义分割--Loss Max-Pooling for Semantic Image Segmentation
  10. 【linux】route使用小结