欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

讲解JSP get方式接收数据出现乱码解决方法

程序员文章站 2022-06-02 14:50:00
我们在jsp中进行页面重定向的时侯实用response.sendRedirect("url?参数"); 这时候,如果我们想传递的参数是中文,那么很可能会遇到传过去以后以乱码显...
我们在jsp中进行页面重定向的时侯实用response.sendRedirect("url?参数"); 这时候,如果我们想传递的参数是中文,那么很可能会遇到传过去以后以乱码显示。 这是因为,用response.sendRedirec("url?参数")的方式传值的提交方式是get方式。所以才会出现乱码问题。 那么,如何解决呢? 首先,在传值页面导入java.net.*;包,然后利用里面的URLEncoder.encode(String str)方法将要传递的中文参数转换为另一种形式的编码。这样在url里面传递时就不会显示为乱码,而是%DB%FD%样式的编码。 其次,就是在读取参数页面将其转码为中文格式就好了。 方法是new String(读取的参数.getBytes("ISo-8859-1"),"UTF-8");然后用一个String 类型变量接收一下就能拿到传过来的中文值。 下面举个例子: 假设有页面a.jsp和b.jsp。且两个页面的pageEncoding都为GBK,现在要从a.jsp向b.jsp中传递一个“你好”; a.jsp b.jsp 这样,b.jsp就可以正常输出“你好”了。 需要注意的: b.jsp中一定要new一个新的字符串接收读到的信息,否则还会是乱码。