找回密码
 注册
搜索
热搜: java php web
查看: 1151|回复: 8

关于JSP网页乱码问题

[复制链接]
发表于 2009-1-28 19:56:34 | 显示全部楼层 |阅读模式
前几天给朋友作一个留言本,所需的一切架构及JAVA BEAN 都写好了。但向数据库写数据及读数据时出现了乱码问题。在网上查了很多资料也没有得到确的答案,本人在做了几天实验,其中因为机子配置太低还加了根内存条,才得到准确的答案,本此献给那些被JSP乱码所困惑的朋友。

  本机配置的java环境:jdk1.6.0 ,tomcat6.0

在MyEclipse6.0环境调试下通过。

 1.JSP页面间的参数传递(包括POST,GET)

系统默认在传递参数是为 ISO-8859-1,所以我们在得到参数的页面上加上如下语句:

<%@ page language="java" contentType="text/html; charset=gb2312"%> //让页面以"gb2312"中文显示内容。


new String(request.getParameter("要得到的参数").getBytes("ISO-8859-1")) //以ISO-8859-1形式获取参数字节(系统默认在传递参数是为 ISO-8859-1),然后构成新的字符串,些时获得的为"gb2312"的字符串,显示时不出现乱码。

  2.JSP页面向SERVLET之间的参数传递。

    JSP页面向SERVLET参数传递是时,传递的时候,参数没有编码,所以只需直接获取参数即可。

  3.数据库读写问题。

    数据库的读写一般是ISO-8859-1;写入时数据库会自动转换,读取是应用下面语句:

    rs.getString("要读取的字段").getBytes("ISO-8859-1")  

   这是本人测试通过的,如有请留言。

 补充:


   1、如果不知道传递的参数以何种形式编码,请用

  URLDecoder.decode(要解码的字符串)

  要引入包:import java.net.URLDecoder;

   2、获取当前字符串编码

  request.getCharacterEnco**(要获取的字符串);

    
发表于 2009-1-28 21:40:11 | 显示全部楼层
坐着沙发慢慢看~~呵呵今天又学到一招,多谢搂主。
回复

使用道具 举报

发表于 2009-1-28 21:19:42 | 显示全部楼层
收了,呵呵
回复

使用道具 举报

发表于 2009-1-28 21:25:14 | 显示全部楼层
我刚刚也遇到了此问题.谢谢这位仁兄了.
不过我还有点意见.就是你可以在  filter   里面写的. 那样不就不用没个页面写一个这玩意了,
回复

使用道具 举报

发表于 2009-1-28 21:32:02 | 显示全部楼层
乱码问题用过滤器就解决了,
回复

使用道具 举报

发表于 2009-1-28 21:00:33 | 显示全部楼层
改天把过滤器的例子写出来给大家分享下,各位别光说不练那
回复

使用道具 举报

发表于 2009-1-28 21:42:04 | 显示全部楼层
支持一下
其实还是在Tomcat上设置比较简单。
配置文件。
回复

使用道具 举报

发表于 2009-1-28 20:20:52 | 显示全部楼层
有这么麻烦吗?
回复

使用道具 举报

发表于 2009-1-28 20:54:32 | 显示全部楼层
谢了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|软晨网(RuanChen.com)

GMT+8, 2024-9-20 15:34

Powered by Discuz! X3.5

Copyright © 2001-2023 Tencent Cloud.

快速回复 返回顶部 返回列表