以上是servlet端的代码。
下面是jsp页面的代码:
原先的思路是通过java.net.URLEncoder.encode对keyWord参数进行utf-8的字符转换,然后在页面用String.getBytes("UTF-8")取回来,结果在页面一打印显示是乱码,后来在一位网友的提醒下,看了下server.xml配置文件,发现如下配置:
HTTP协议传参默认使用的是ISO8859_1字符集,而我却已经配置成了utf-8字符集了,这说明在我的项目中,Url传参实际上经过了2次utf-8字符集的转换,而我在页面进行处理的时候只使用了一次utf-8的解码转换。
于是servlet的代码不变,jsp代码改为:
问题到此已经成功解决。