`

JSP页面显示乱码二、表单提交中文时出现乱码三、数据库连

    博客分类:
  • java
阅读更多
大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着您,我现在把我在JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考。

一、JSP页面显示乱码
下面的显示页面(display.jsp)就出现乱码:
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<%
out.print("JSP的中文处理");
%>
</body>
</html>
对不同的WEB服务器和不同的JDK版本,处理结果就不一样。原因:服务器使用的编码方式不同和浏览器对不同的字符显示结果不同而导致的。解决办法:在JSP页面中指定编码方式(gb2312),即在页面的第一行加上:<%@ page contentType="text/html; charset=gb2312"%>,就可以消除乱码了。完整页面如下:
<%@ page contentType="text/html; charset=gb2312"%>
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<%
out.print("JSP的中文处理");
%>
</body>
</html>

二、表单提交中文时出现乱码
下面是一个提交页面(submit.jsp),代码如下:
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<form name="form1" method="post" action="process.jsp">
<div align="center">
<input type="text" name="name">
<input type="submit" name="Submit" value="Submit">
</div>
</form>
</body>
</html>
下面是处理页面(process.jsp)代码:
<%@ page contentType="text/html; charset=gb2312"%>
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<%=request.getParameter("name")%>
</body>
</html>
如果submit.jsp提交英文字符能正确显示,如果提交中文时就会出现乱码。原因:浏览器默认使用UTF-8编码方式来发送请求,而UTF-8和GB2312编码方式表示字符时不一样,这样就出现了不能识别字符。解决办法:通过request.seCharacterEncoding("gb2312")对请求进行统一编码,就实现了中文的正常显示。修改后的process.jsp代码如下:
<%@ page contentType="text/html; charset=gb2312"%>
<%
request.seCharacterEncoding("gb2312");
%>
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<%=request.getParameter("name")%>
</body>
</html>

三、数据库连接出现乱码
只要涉及中文的地方全部是乱码,解决办法:在数据库的数据库URL中加上useUnicode=true&characterEncoding=GBK就OK了。

四、数据库的显示乱码
在mysql4.1.0中,varchar类型,text类型就会出现中文乱码,对于varchar类型把它设为binary属性就可以解决中文问题,对于text类型就要用一个编码转换类来处理,实现如下:
public class Convert {
/** 把ISO-8859-1码转换成GB2312
*/
public static String ISOtoGB(String iso){
String gb;
try{
if(iso.equals("") || iso == null){
return "";
}
else{
iso = iso.trim();
gb = new String(iso.getBytes("ISO-8859-1"),"GB2312");
return gb;
}
}
catch(Exception e){
System.err.print("编码转换错误:"+e.getMessage());
return "";
}
}
}
把它编译成class,就可以调用Convert类的静态方法ISOtoGB()来转换编码。
分享到:
评论

相关推荐

    如何解决JSP页面显示乱码问题

    本文将针对JSP页面显示乱码、表单提交中文时出现乱码以及数据库连接时出现乱码这三个方面,提供详细的解决方案。 #### JSP页面显示乱码 **问题描述** 当在JSP页面中尝试显示中文时,可能会遇到乱码问题。例如,在...

    jsp页面提交乱码问题

    在进行Web开发时,特别是使用Java Server Pages (JSP)技术时,经常会遇到表单提交数据出现乱码的问题。这个问题主要出现在从客户端(如浏览器)提交的数据到服务器端的过程中。本文将详细介绍如何在JSP页面中正确...

    jsp页面传值中文乱码问题处理.docx

    在存取数据库时,如果中文字符会出现乱码,可能是由于数据库连接参数中的编码方式不正确所致。解决方案是,在数据库连接参数中设置编码值。 JSP 页面传值中文乱码问题可以通过修改编码方式、设置输出编码、接收参数...

    JSP页面中文乱码几个解决办法

    当通过POST方式提交表单数据到JSP或Servlet时,如果接收的中文参数值乱码,可以在处理请求的代码之前,使用`request.setCharacterEncoding("GBK")`来设置请求参数的编码格式。这通常应在读取参数之前进行,以确保...

    5种JSP页面显示为乱码的解决方法

    当用户通过表单提交数据到Servlet时,若不处理编码,可能会出现乱码。需要在Servlet中设置请求的编码,例如: ```java request.setCharacterEncoding("GBK"); ``` 请确保在读取请求参数之前执行此操作。 3. ...

    解决jsp页面中文乱码问题

    在开发Web应用时,我们经常会遇到JSP页面中文乱码的问题。这主要涉及到字符编码的设置和处理。本文将深入探讨如何解决这个问题,确保在JSP页面中正确显示中文字符。 首先,我们需要理解字符编码的基本概念。在...

    页面乱码解决4种方案

    这四个场景分别是:JSP页面显示乱码、表单提交中文时出现乱码、数据库连接出现乱码以及数据库显示乱码的问题。这些解决方案不仅适用于Java + MySQL的开发环境,也适用于其他编程语言及数据库环境。 ### 一、JSP页面...

    JSP中文乱码问题解决办法

    JSP 页面中中文乱码问题是指在 JSP 页面中使用中文时,页面显示乱码的现象。这种问题的解决办法可以从多方面入手,包括设置页面的字符编码、使用 POST 方式提交表单、使用 GET 方式提交表单等。 一、JSP 页面设置...

    jsp中在提交表单时的中文处理问题

    在JSP(Java Server Pages)中处理中文字符时,特别是在用户通过表单提交数据时,可能会遇到各种编码问题。这是因为Web应用中涉及到多种编码格式,包括浏览器编码、HTTP请求编码、服务器编码等,如果这些编码不一致...

    JSP乱码解决大全

    JSP乱码解决大全 JSP页面显示乱码 表单提交中文时出现乱码 数据库连接

    JSP存到数据库乱码解决办法

    当我们将中文等非ASCII字符的数据存储到数据库时,经常会遇到乱码的情况。这主要是因为不同系统、组件之间默认使用的字符集不一致所导致的。本文将详细介绍如何通过配置`CharacterEncodingFilter`来解决JSP存取数据...

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

    jsp中文乱码问题详解 在jsp中文乱码问题中,乱码的出现是由于编码格式不一致所导致的。在jsp文件中,存在三个地方的编码格式:...同时,在使用Post和Get方式提交表单时,需要指定提交的编码格式,以避免乱码的出现。

    jsp页面乱码处理

    在进行Web开发时,尤其是使用JSP技术栈时,乱码问题是一个常见的困扰,它可能出现在页面显示、表单提交或数据库交互等多个环节。本文将根据“jsp页面乱码处理”的标题与描述,深入解析解决JSP乱码问题的策略,并结合...

    传值 乱码 处理 jsp 处理表单时

    2. **乱码**:当浏览器或服务器接收到的数据与实际发送的数据使用的编码不一致时,就会出现乱码现象。 3. **JSP**:JSP是一种基于Java技术的服务器端脚本语言,它将HTML页面与Java代码相结合,可以动态生成HTML页面...

    几种常用解决jsp中文乱码的方案

    解决 JSP 中文乱码的方案 JSP 中文乱码是动态网站开发中经常遇到的问题,本文将从产生 JSP 中文乱码的四种类型入手...但无论选择哪种方案,都需要确保 JSP 的字符集和数据库的字符集保持一致,以避免中文乱码的出现。

    jsp页面乱码最简单的解决办法

    4. **表单提交的数据编码**:表单提交的数据默认使用ISO-8859-1编码,如果未指定正确的编码方式,则在接收数据时容易出现乱码。 #### 二、解决方法概述 针对上述原因,我们可以通过以下几种方式进行调整来解决JSP...

    解决jsp提交乱码的问题

    本篇文章将详细介绍如何解决JSP页面提交时出现的乱码问题,包括GET请求和POST请求两种常见的情况。 #### 一、问题背景与分析 1. **GET请求乱码**: - GET请求是通过URL来传递参数的,这些参数通常会以编码的形式...

    jsp乱码解决方案 本方案解决了jsp常见的乱码问题

    ### jsp乱码解决方案 #### 一、引言 在Web开发中,特别是使用Java Server Pages (JSP)进行开发时,字符编码问题是一个经常遇到的技术难题。如果处理不当,很容易导致网页显示乱码,影响用户体验及数据的正确性。...

    Servlet及jsp解决中文乱码问题

    特别是在使用Java技术栈(如Servlet与JSP)进行开发时,如果处理不当,很容易出现中文字符显示乱码的情况。本文将详细介绍如何在Servlet与JSP中彻底解决中文乱码问题,并给出具体的解决方案。 #### 二、中文乱码的...

Global site tag (gtag.js) - Google Analytics