springmvc 在web配置了编码拦截器,并且我整个工程都是UTF-8格式的,为什么responseText中文还是乱码 50
springmvc在web配置了编码拦截器,并且我整个工程都是UTF-8格式的,为什么responseText中文还是乱码<filter><filter-name>enc...
springmvc 在web配置了编码拦截器,并且我整个工程都是UTF-8格式的,为什么responseText中文还是乱码
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEnCoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
我只有在java文件里加上response.setContentType("text/html; charset=UTF-8"); 这段中文才不是乱码。为什么拦截器没作用? 展开
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEnCoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
我只有在java文件里加上response.setContentType("text/html; charset=UTF-8"); 这段中文才不是乱码。为什么拦截器没作用? 展开
1个回答
展开全部
<%@ page contentType="text/html;charset=UTF-8" %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
你所说的整个工程都是UTF-8格式,那么jsp页面上是不是都加上了这两句
更多追问追答
追问
我加了啊,但是没有用,还是乱码
追答
web.xml配置的过滤编码过滤器是拦截请求,然后对它采用设定的编码,注意只是请求,不是响应,所以不设置响应的编码是可能会出问题的。也就是说filter只是对httpRequest编码。
httpresponse中可以设置输出到浏览器的数据使用的编码方法是response.setCharacterEncoding("UTF-8")和response.setContentType("text/html;charset=UTF-8"),如果只是单纯的设置编码,最好是用response.setCharacterEncoding("UTF-8"),因为response.setContentType("text/html;charset=UTF-8")是针对具体的MIME类型设置对应的字符编码。需要注意的是这里设置的编码对JSP页面不一定起作用,理由是JSP页面有自己设置字符编码的方式,而且优先级更高。
是指客户端浏览器以什么样的编码来显示网页,指导浏览器解析服务器端传入的HTML流. 同时它还有一个作用,指导其提交表单的时候使用什么编码传入request.
MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。--这句话摘自http://baike.baidu.com/link?url=k1aBQNW5W4KfiWTSWO8OD-jYs-q6CllHgoFNHOvADfkkwDmOVRDCZGrqrY_gLLsZ
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询