这几天一直在改“前辈”流下来的一个程序, 其中让我很无语的是 。 他的字符编码居然全在servlet 中进行转码的, 就是这样:
String submit = new String(request.getParameter("Submit1").getBytes(
"ISO-8859-1"), "GBK");
居然写成这样了 ,让我来扩展后面的功能,我想也不能跟他塞得, 也在servlet中写这个吧 ,那未免太2了。
filter 不就白学了么?
所以我自己就写了 filter ,但是项目提交上去,就出了问题。
看了半天 , 从jsp页面提交上来的数据先是被
String submit = new String(request.getParameter("Submit1").getBytes(
"ISO-8859-1"), "GBK");
了, (注明: 这是他写的,我没有改,), 然后对 submit 进行equals() 判断。
if (submit.equals("查询"))
submit中那个按钮的value 明明就是 “查询”, 居然不行,
想了想, 哦 , 我的filter 是UTF-8的编码, 和这个
String submit = new String(request.getParameter("Submit1").getBytes(
"ISO-8859-1"), "GBK");
同时存在的话 , 就不是submit中 原来的值“ 提交” 了 。
哎 原来问题在这啊 !! 靠