Java web开发中的乱码问题
来源:互联网 发布:安装linux的步骤 编辑:程序博客网 时间:2024/05/02 02:42
Java web开发中的乱码问题主要包括以下三种:
- jsp页面中,中文显示乱码
- get请求中文参数传输到服务端乱码了
- post请求中文参数传输到服务端乱码了
jsp页面乱码
Jsp文件中会出现下面所示的编码指定方式:
<%@ page language=“Java” contentType=“text/html; charset=UTF-8″ pageEncoding=“UTF-8″%><meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8″>
- pageEncoding=”utf-8” –该jsp文件自身采用的编码格式,也就是告诉服务器使用什么编码翻译jsp文件成java文件。 注意: jsp中post表单的编码由pageEncoding和contentType参数决定,以pageEncoding为准,如果没有pageEncoding则以contentType为准,如果没有contentType以Meta标签中的charset为准,都没有则以ISO-8859-1编码。
- contentType=”text/html;charset=utf-8”服务器发送浏览器的数据类型和内容编码。其中charset=”utf-8”–用来指定Tomcat返回响应时采用的编码,也是post方式提交参数的编码方式。
- Meta标签中的charset是在contentType未指定编码时采用的默认编码格式。
get请求中文乱码处理方案
post请求乱码处理方案
针对上述get和post请求中文乱码问题问题,其实在Java web方式中的处理很简单,只需要在web.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>
总结
开发时应注意工作区编码,前端编码,服务器编码,数据库编码一致。造成乱码的原因就是因为使用了错误的字符编码去解码字节流,因此当我们在思考任何跟文本显示有关的问题时,请时刻保持清醒:当前使用的字符编码是什么。
0 0
- 深入 Java Web 开发中的乱码问题
- Java web开发中的乱码问题
- web开发中的乱码问题
- Web开发中的乱码问题
- Java web开发中的中文乱码问题解决之道 - 概要篇
- 关于Java web开发中的中文乱码问题
- 终结解决Java Web开发过程中的中文乱码问题
- java-web开发乱码问题
- Java开发中的乱码问题
- Java开发中的乱码问题
- web开发中的中文乱码问题
- 浅析WEB开发中的中文乱码问题
- web 开发中的中文乱码问题
- 浅谈web开发中的乱码问题
- Java web项目中的乱码问题
- Java Web开发中文乱码问题
- Java web 开发中文乱码问题
- JAVA Web项目开发乱码问题备忘
- 软件工程之软件设计(2)
- Android项目包名命名规范及常见项目架构
- 搭建个人网站
- [BZOJ1754]牛的数学
- 随机变量及概率分布
- Java web开发中的乱码问题
- GitHub和Git多人协作开发
- MySQL 数据备份与还原
- 当今世界最为经典的十大算法--投票进行时
- 函数凸性的判断方法
- gdb
- Win10x64+Zbar_0.10+VS2015+Opencv3.0.0
- 部署hbase(独立zookeeper)
- C++多重继承下的指针类型转换