`
lt200819
  • 浏览: 188139 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jsp编码格式问题

 
阅读更多
1 所有的 .java|.jsp|.html|.xml 源文件均使用utf-8编码格式保存到系统磁盘。
如:在Eclipse中编辑文件,选中文件打开右键菜单选择属性,将文本文件编码设置为其他并选择UTF-8;也可以在
Eclipse——首选项——常规——内容类型中设置各种文件的缺省编码,这样以后所有的文本文件都使用统一编码。


2 在页面显示中文方面 .jsp文件中必须将文件编码格式pageEncoding、<@page>指令中contentType编码格式、<html>的<meta>标签编码格式都设置为utf-8。
如:
<%@ page language="java" pageEncoding="utf-8"%>
<%@ page contentType="text/html;charset=utf-8"%>
<html>
<head>
<title>中文问题</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
</html>
注意: META标签中的编码字符必须是"utf-8",如果不加中划线,则在ie下出现乱码情况,但ie的原文件查看却是中文!


3 把表单提交内容的字符集设为utf-8,在jsp、servlet或者filter中使用request.setCharacterEncoding("utf-8");
此行代码必须写在最前面,如果在此前进行任何request.getPragrmber()方法都会使字符转换失效!


4 页面超连接连接中带的汉字如中文目录"/系统/页面/首页.jsp",则在tomcat/conf/server.xml中的配置文件中加上:useBodyEncodingForURI="true"即可正常使用getParameter取出正确内容。如:
<!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000" useBodyEncodingForURI="true"
disableUploadTimeout="true" />
注:如果使用get方法提交中文参数如"?name=张三",则必须使用encode编码转换为百分号表示来传递,如:
"?name=%E5%BC%A0%E4%B8%89",注意长度不要超过连接字符串最大长度。
编码方法:[JavaScript]     encodeURIComponent("中文");
                    [Java&JSP]     java.net.URLEncoder.encode("中文");
解码方法:[JavaScript]     decodeURIComponent("%E4%B8%AD%E6%96%87");
                    [Java&JSP]     java.net.URLDecoder.decode("%E4%B8%AD%E6%96%87");


5 连接MySQL数据库时修改mysql在windows/my.ini里default-character-set=utf-8,并将mysql里数据库和表也都设为utf8_unicode_ci。


6 数据库连结url:jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf-8
注意,关键就在于此:此句中间是'&'不是'&amp;'这是因为数据库连结时,在.jsp和.java文件中应该用&号,而XML文件中才需要用&amp;


7 使用AJAX方式提交请求时必须为XMLHttpRequest添加头声明
注意:如果已经存在已此名称命名的http头,则覆盖之。此方法必须在open方法后调用。
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;ch
arset=UTF-8");

Tomcat乱码问题:Get方法的处理
tomcat对post和get的处理方法不一样,所以过滤器不能解决get的乱码问题,它需要在其他地方设置。
打开<tomcat_home>/conf目录下server.xml文件,找到对8080端口进行服务的Connector组件的设置部分,给这个组件添加一个属性:URIEncoding="UTF-8"。修改后的Connector设置为:
<Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
;              connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" />
* 注意修改后重新启动tomcat才能起作用
分享到:
评论

相关推荐

    myeclipse(设置JSP页面编码格式)【图解很详细的】

    在开发Web应用时,正确设置JSP页面的编码格式至关重要,因为这直接影响到网页内容的显示,特别是处理中文字符时。MyEclipse作为一款强大的Java EE集成开发环境,提供了便捷的方式来配置JSP页面的编码。以下将详细...

    jsp编码 jsp乱码

    jsp编码乱码问题是jsp开发中常见的问题之一,该问题可能会导致jsp页面显示乱码,影响用户体验。因此,了解jsp编码的原理和解决乱码问题的方法是非常重要的。 jsp编码的原理 jsp编码是指jsp页面中的编码方式,jsp...

    jsp页面文档编码问题

    在Java Web开发中,编码问题始终是一个常见的挑战,特别是涉及到JSP页面时。JSP(JavaServer Pages)是一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,以实现服务器端的数据处理和逻辑控制。然而,由于...

    JSPServlet 中的汉字编码问题

    - 需要在JSP页面头部指定正确的编码格式,例如`; charset=UTF-8"&gt;`。 - **Servlet 中的编码问题**: - 在Servlet中处理请求时,可以使用`request.setCharacterEncoding("UTF-8")`来设置请求参数的编码格式。 - 在...

    JSP编码以及乱码问题解疑

    **JSP编码与乱码问题详解** 在JSP(JavaServer Pages)开发中,编码问题是一个常见的困扰,尤其是在处理中文字符时。本文将深入探讨JSP编程过程中出现的乱码问题,包括原因分析和解决方案。 1. **基本的乱码问题**...

    jsp中文乱码问题jsp中文乱码问题详解

    jsp中文乱码问题的出现是由于编码格式不一致所导致的,可以通过确保jsp文件的存储格式、解码格式和控制浏览器的解码方式一致来解决乱码问题。同时,在使用Post和Get方式提交表单时,需要指定提交的编码格式,以避免...

    jsp使用URL编码传递中文参数问题.doc

    在本例中,`b.jsp`通过`request.getParameter("test")`获取参数,但原始数据是以UTF-8编码的URL编码格式,而默认的解码方式可能是ISO8859_1,所以需要手动转换。 3. **ISO8859_1解码**:在`b.jsp`中,我们看到`...

    JspSmartUpload自定义编码版

    **JspSmartUpload自定义编码版**是一款专为解决Java Web开发中文件上传时可能出现的中文乱码问题而设计的工具。在传统的JSP文件上传过程中,由于编码不一致,尤其是遇到非ASCII字符(如汉字)时,可能会导致乱码现象...

    JSP-Servlet中的汉字编码问题-JSP教程

    - 解决方案:确保项目中的所有文件(包括JSP、Java源代码文件)采用统一的字符编码格式,如UTF-8。 2. **请求参数编码问题**: - **GET请求**:通常情况下,GET请求中的参数会直接出现在URL中,因此浏览器会根据...

    jspSmartUpload可设置编码格式版本,附带源码

    本资源提供的"jspSmartUpload可设置编码格式版本"是一个专为解决此类问题而设计的工具,它允许开发者自定义字符编码,从而有效地避免了在上传文件过程中可能出现的乱码现象。 `jspSmartUpload`是一个基于Java的文件...

    jsp编码规范

    【JSP编码规范】是Java Web开发中的一个重要组成部分,它旨在提高代码的可读性、可维护性和团队协作效率。以下是一些关键的规范要点: 1. **文件命名规范**: - **文件后缀**:不同的文件类型应遵循特定的后缀。如...

    解决JSP中文乱码问题

    解决 JSP 中文乱码问题 解决 JSP 中文乱码问题是一个很常见...解决 JSP 中文乱码问题需要从多方面入手,包括在 JSP 文件中指定编码方式,在 Java 文件中指定编码方式,在页面中指定编码方式,并确保编码方式的一致性。

    火车票查询jsp编码

    【标题】"火车票查询jsp编码"涉及到的是一道针对初学者的编程实践题目,主要目的是让学生掌握如何使用JavaServer Pages (JSP) 技术来实现一个火车票查询系统。JSP是一种基于Java的服务器端脚本语言,用于创建动态...

    JSP编码中乱码问题.doc

    JSP编码中乱码问题.doc 叫你怎么解决jsp编码中出现的各种中文乱码的解决办法

    JSP和Servlet中的几个编码的作用及原理

    本文将深入探讨JSP和Servlet中的几个关键编码设置的作用及原理,帮助开发者更好地理解和解决实际开发中遇到的编码问题。 #### 二、主要编码设置及其作用 ##### 1. `pageEncoding="UTF-8"` - **作用**:`...

    jsp使用URL编码传递中文参数乱码问题

    jsp使用URL编码传递中文参数乱码问题

    JSP Servlet 中的汉字编码问题

    JSP Servlet 中的汉字编码各种问题解决方法

    怎么解决JSP页面中文问题20100901

    使用Eclipse等IDE开发时,确保所有文件都使用统一的编码格式(如UTF-8),并在IDE设置中指定相应的编码格式,以避免因编辑器编码设置不一致导致的问题。 7. **Tomcat服务器编码设置** 在Tomcat服务器的配置文件`...

    AJAX CSS JS JSP 编码规范

    AJAX CSS JS JSP 编码规范 AJAX、CSS、JS 和 JSP 是当前 web 开发中最常用的技术栈,编码规范是保障代码质量和可维护性的关键。本文将从 CSS 编码规范、基本书写规范、CSS 命名参考、Java 编程规则和 JSP 编码规范...

Global site tag (gtag.js) - Google Analytics