jsp+Servlet的形式,在jsp页面向后台发送的请求里包含中文时,后台采用
String name = request.getParameter("name")接收到的是乱码,我在网上找了很多资料,有网友说request.getParameter是默认采用ISO8859-1来编码的,必须进行转换:
我总结了一下,解决中文乱码大概有以下几种方式:
1、采用decode()方法
java.net.URLDecoder.decode(s)
2、采用设置字符集的方式
request.setCharacterEncoding("utf-8");
3、在页面上定义charset的字符集
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4、在web.xml文件里定义编码,同时在CoreFilter类里定义编码为utf-8
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>com.demo.filter.CoreFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
5、在form表单里定义编码
accept-charset="utf-8" onsubmit="document.charset='utf-8';"
6、更改ContentTypes的值
改变myeclipse里ContentTypes的值为utf-8
7、改变tomcat字符集
通过改变server.xml文件里的字符集来接收中文
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"/>
8、采用转码的方式
nameCode = new String(request.getParameter("name").getBytes("ISO8859-1"),"UTF-8");
补充:如果是Servlet向页面发送的数据中包含中文,可以采用如下方式解决:
response.setContentType("text/html;charset=utf-8");
__________________________________________________________________________________
想要获取更多资料请加群682114514
分享到:
相关推荐
### JSP与Servlet之间的传值详解 #### 一、引言 在Web开发中,Java Server Pages (JSP) 和 Servlet 是两种非常重要的技术。它们通常被用来构建动态网页和处理用户请求。JSP 主要负责展示层逻辑,而 Servlet 更多...
下面将详细讲解 JSP 中文乱码种类和解决方案。 JSP 文件中文内容显示乱码 在 JSP 文件中,如果中文内容显示乱码,可能是由于浏览器的默认编码方式为 ISO-8859-1,而 JSP 文件的编码方式为 UTF-8所致。解决方案是,...
jsp+servlet+mysql乱码解决方案 jsp+servlet+mysql乱码解决方案是指在使用jsp+servlet+mysql...jsp+servlet+mysql乱码解决方案是一个非常重要和实用的解决方案,对于jsp+servlet+mysql开发的web应用程序非常有价值。
JSP与Servlet传值技术是Java Web开发中的一种重要技术,用于实现前台和后台之间的数据传递。该技术有多种实现方式,本文将对其进行总结和说明。 JSP到JSP的传值技术 JSP到JSP的传值技术主要有四种: 1. 超链接...
总结JSP与servlet之间的传值 JSP与 servlet之间的传值有两种情况:JSP -> servlet, servlet -> JSP。 通过对象 request和 session (不考虑 application)完成传值。
本文将详细讲解如何通过`request`和`response`对象实现在JSP与Servlet之间的传值。 首先,我们来看JSP传值给Servlet的方式: 1. **Form表单传值**:这是最常见的方法,用户在JSP页面填写表单后提交,表单数据通过...
本文将详细探讨JSP与Servlet之间的传值方法,帮助读者更好地理解和掌握这两种技术之间的数据交互方式。 #### 二、JSP与Servlet传值方法概述 根据所提供的信息,我们可以总结出JSP与Servlet之间的几种主要传值方法...
乱码问题的原因是因为URL传值时,浏览器和服务器之间的编码方式不同所致。在大多数情况下,浏览器使用UTF-8编码,而服务器端使用ISO-8859-1编码。当我们传递中文参数时,如果不进行特殊处理,服务器端会将中文字符...
通过以上方法,基本可以解决servlet和jsp在接收和显示中文时的乱码问题。但在实际开发中,可能还需要根据具体环境和需求进行调整。了解这些知识点,对于Java Web开发者来说是非常必要的,能够提高项目的稳定性和用户...
jsp 传参 servlet 接收中文乱码问题的解决方法 jsp 传参 servlet 接收中文乱码问题是一个经常遇到的问题,特别是在使用 Hibernate+Servlet 框架时。当我们在 jsp 页面传参到 servlet 时,中文字符经常会出现乱码...
### 解决JSP+Servlet开发中的中文乱码问题 #### 概述 在基于JSP(Java Server Pages)和Servlet技术的Java Web应用开发过程中,中文乱码问题一直是困扰开发者的一大难题。由于Java Web应用程序涉及多个组件之间的...
本篇将详细介绍如何解决JSP传值过程中出现的中文乱码问题。 首先,我们需要理解乱码产生的原因。在网页中,数据的编码和解码过程需要保持一致。如果服务器和客户端之间使用的字符编码不同,就可能出现乱码。例如,...
本文将深入探讨“JSP乱码”的多种解决方案,并提供实用的解决策略。 1. **理解字符编码的基本概念** - 字符编码是计算机对文字进行存储和处理的标准,常见的有ASCII、GBK、UTF-8等。 - JSP页面默认使用ISO-8859-1...
解决 JSP 和 Servlet 操作 MySQL 中文乱码问题的方法 在 JSP 和 Servlet 操作 MySQL 过程中,中文乱码问题是一个常见的问题,而解决这个问题需要从多方面入手,包括 JSP 页面、Servlet 编程和 Filter 配置等。本文...
本文将深入探讨JSP乱码的原因及其解决方案,帮助开发者有效地处理这类问题。 ### 1. JSP乱码的成因 - **字符集设置不一致**:JSP文件、HTML页面、HTTP头、Servlet输出以及数据库存储等环节的字符集设置不一致,...
本文将深入探讨JSP和Servlet中文乱码问题的根源、解决方案以及预防策略。 ### JSP和Servlet中的中文乱码问题根源 中文乱码问题通常源于字符编码不一致或配置错误。在Web应用中,数据流经多个环节,包括客户端...
jsp表单的FORM传值 jsp是一种服务器端脚本语言,通过与HTML、XML...jsp表单的FORM传值是jsp开发中一个非常重要的技术,通过使用javaBean和FORM表单,可以将数据从客户端传递到服务器端,并在服务器端进行处理和验证。
通过这个简单的Java Web学习demo,开发者可以了解Servlet和JSP协同工作的方式,以及如何在它们之间传递数据。这有助于理解Web应用的基础架构,并为进一步深入学习和开发复杂的Java Web应用打下坚实基础。