jsp乱码问题 jsp页面往mysql里插入中文后数据库里显示乱码

1、JSP页面乱码
这种乱码的原因是应为没有在页面里指定使用的字符集编码,解决方法:只要在页面开始地方用下面代码指定字符集编码即可:

<%@ page contentType="text/html;charset=utf-8" language="java" %>

2、数据库乱码
这种乱码会使你插入数据库的中文变成乱码,或者读出显示时也是乱码,解决方法如下:
在数据库连接字符串中加入编码字符集

String Url="jdbc:mysql://localhost/digitgulf?user=root&
password=root&useUnicode=true&characterEncoding=GB2312";

并在页面中使用如下代码:

response.setContentType("text/html;charset=gb2312");
request.setCharacterEncoding("gb2312");

3、中文作为参数传递乱码
当我们把一段中文字符作为参数传递个另一页面时,也会出现乱码情况,解决方法如下:
在参数传递时对参数编码,比如

RearshRes.jsp?keywords=" + java.net.URLEncoder.encode(keywords)

然后在接收参数页面使用如下语句接收

keywords=new String(request.getParameter("keywords").getBytes("8859_1"));

以上为现阶段遇到的乱码问题,乱码的核心问题还是字符集编码问题,只要掌握了这一点,一般的乱码问题都可以解决。

评论当前被关闭。

Copyright © All Rights Reserved · 菁菁博客 Since 2012 · Proudly powered by WordPress