请求转发jsp页面乱码问题的快速解决方法
•在最近的项目中 使用了jsp+servlet来开发项目,但是由于后台的不太熟练 导致了困难重重。所幸 学习能力还可以 一边做一遍学吧。
•今天的问题:请求转发后页面的乱码问题
•由于特殊原因——图片上传的form表单无法通过ajax提交 因此必须使用form表单直接提交。但是这样会导致一个问题:前后台交互的时候效果不好。为什么效果不好?这里说的不是功能的问题。作为web开发者,客户的体验我们要放在第一位。因此,我们必须将对客户的信息反馈放在一个比较重要的地位。说白了,就是上传个图片成没成功?我发布的信息是否成功的上传了?如果你上传东西的时候网页没反应,或者直接就跳转到其他页面,他会以为可以了,但是实际上没有上传到服务器上,原因可能很多,比如说是我现在的网络不好,或者文件太大了,或者是你的文件不支持,但是这作为不懂代码的用户来说是很难理解的,他们会认为你的网站做的实在是太垃圾了。
•因此,我们才会费尽心思的去为客户去思考,把他们想知道的信息传达给他们。
•理所当然,ajax很实用,但是在文件流的情况下是无法通过ajax上传数据的。
•于是 request.getrequestdispacher('url').forward请求转发和重定向派上了用场。而重定向是无法共享数据的,因此只能使用请求转发。
•在此,文件为uploadservlet和user.jsp页面。当上传购物的信息时候,我所有信息已经插入到后台,需要为用户返回信息说,你成功了。那么传统的方式,request.setattribute()很实用,在jsp页面上用request获取值判断是否成功就可以了。
•但是 转发回来之后 页面乱码了。。。
•经多方查找资料,终于找到解决方案;
•过滤器 配置成过滤所有的文件。
•现粘贴如下:
package com.java.filter; import java.io.ioexception; import javax.servlet.filter; import javax.servlet.filterchain; import javax.servlet.filterconfig; import javax.servlet.servletexception; import javax.servlet.servletrequest; import javax.servlet.servletresponse; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse; public class encodingfilter implements filter { public void destroy() { // todo auto-generated method stub } public void dofilter(servletrequest req, servletresponse resp, filterchain chain) throws ioexception, servletexception { httpservletrequest request = (httpservletrequest) req; httpservletresponse response = (httpservletresponse) resp; request.setcharacterencoding("utf-8"); response.setcharacterencoding("utf-8"); response.setcontenttype("text/html;charset=utf-8"); chain.dofilter(request, response); } public void init(filterconfig arg0) throws servletexception { // todo auto-generated method stub } }
•web.xml配置:
<filter> <filter-name>encodingfilter</filter-name> <filter-class>com.java.filter.encodingfilter</filter-class> </filter> <filter-mapping> <filter-name>encodingfilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
以上这篇请求转发jsp页面乱码问题的快速解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
推荐阅读
-
jsp传参 servlet接收中文乱码问题的解决方法
-
请求转发jsp页面乱码问题的快速解决方法
-
STRUTS+AJAX+JSP 请求到后台乱码问题解决方法
-
jsp中 ajax的get请求的中文乱码问题的解决方法
-
jsp页面传参乱码的解决方法
-
关于JSP乱码问题(页面传值产生的乱码)
-
解决jsp页面使用网络路径访问图片的乱码问题
-
JSP MySQL插入数据时出现中文乱码问题的解决方法
-
页面get请求 中文参数方法乱码问题的快速解决方法
-
的中文乱码问题">
SpringMVC的controller层接收来自jsp页面通过
备案号:粤ICP备20058927号
© Copyright © 2020-2022 www.superweb999.com 程序员文章站.