我为人人,人人为我!帮助    建议/咨询
 24 123
发新话题
打印

[JSP] 关于JSP网页乱码问题

本主题由 admin 于 2008-5-15 17:50 移动

关于JSP网页乱码问题

前几天给朋友作一个留言本,所需的一切架构及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**(要获取的字符串);

    

TOP

坐着沙发慢慢看~~呵呵今天又学到一招,多谢搂主。

TOP

收了,呵呵
乱码问题的确是个很烦人的问题

TOP

我刚刚也遇到了此问题.谢谢这位仁兄了.
不过我还有点意见.就是你可以在  filter   里面写的. 那样不就不用没个页面写一个这玩意了,
  你觉得呢 ?

TOP

写的还是很仔细的。值得收藏。

TOP

乱码问题用过滤器就解决了,

TOP

改天把过滤器的例子写出来给大家分享下,各位别光说不练那

TOP

支持一下
其实还是在Tomcat上设置比较简单。
配置文件。

TOP

有这么麻烦吗?
全程使用UTF编码,不就行了!

TOP

谢了

同志们,看见大家这么积极参加讨论我很高兴,不过有些不是能用过滤解决的啊

TOP

 24 123
发新话题