jsp请求乱码问题

首先尝试添加filter,以下是我的自定义filter,实现了Filter接口:

package com.deplume.ssm.filter;

import javax.servlet.*;import java.io.IOException;

//字符集过滤器public class CharSetFilter implements Filter{

@Override   public void destroy() {      // TODO Auto-generated method stub

}

@Override   public void doFilter(ServletRequest arg0, ServletResponse arg1,         FilterChain arg2) throws IOException, ServletException {      arg0.setCharacterEncoding("utf-8");      arg2.doFilter(arg0, arg1);   }

@Override   public void init(FilterConfig arg0) throws ServletException {      // TODO Auto-generated method stub

}

}
然后在web.xml里面添加如下代码:
<filter>   <filter-name>chatSetFilter</filter-name>   <filter-class>com.deplume.ssm.filter.CharSetFilter</filter-class></filter><filter-mapping>   <filter-name>chatSetFilter</filter-name>   <url-pattern>*.action</url-pattern></filter-mapping>
 
按理说这样应该就可以解决乱码问题了,但是本人不知道哪里的问题,还是没有解决,最终查了一些资料,修改了tomcat目录下config/server.xml文件,就可以了
只需要在每个结点加上一个属性:useBodyEncodingForURI="true"
 
应该就可以解决了,如果还不能解决的话,修改一下IDE里面的encoding属性
时间: 2024-08-02 19:23:10

jsp请求乱码问题的相关文章

jsp get与post请求乱码问题

乱码问题01:<%reques.setCharacterEncoding("utf-8");%> 02:get请求乱码 001.:String 编码之后的字符串 = new String(获取前的字符串.getBytes("iso-8859-1"),"utf-8"); 002:通过conf下的server.xml文档的<Connector port="8080" protocol="HTTP/1.1

JSP学习笔记(三):解决JSP中文乱码问题

JSP开发应用过程中中文乱码是个比较常见的问题,其根源是:Web容器默认的字符编码格式是ISO-8859-1. 一.ISO-8859-1是不支持中文的.假如在保存JSP页面源码时遇到该错误,只要把JSP命令标签中的键值对"pageEncoding"的值ISO-8859-1改成"utf-8"(或UTF-8),当然是建议改成这样的编码格式,也可以改成GBK.这样就可以顺利保存源代码了. 二.get和post提交表单时遇到中文乱码问题的解决方案: (1)post提交:po

get请求乱码情况

编写一个RegistServlet处理用户的Get请求数据 1 public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { 2 // 处理响应数据的格式和编码 3 response.setCharacterEncoding("utf-8"); 4 response.setContentType("text/ht

解决JSP中文乱码问题

大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考.首先了解一下Java中文问题的由来: Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦.原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题.首先Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字节流

请求乱码和响应编码的解决方案

为什么会乱码? 通信双方在进行通信的时候,实际上是将通信的内容按照一定的规则转化为二进制进行通讯的. 而这个规则就是字符的编码. 在请求到达的时候,另一方需要解码. 由于通信双方的编码方式和解码方式不一样,所以造成了乱码. tomcat服务器默认使用iso8859-1的编码方式,浏览器不设置的话,默认的编码是gb2312,一般在jsp或者在HTML文件中会设置编码方式为utf-8. 一般我们使用utf-8 的编码格式. 一.get请求乱码: 浏览器编码-->服务器解码 第一步:设置服务器的解码方

JSP中文乱码问题终极解决方案(下)

摘要: 本文首先从四个方面给出了在使用JSP过程中可能出现中文乱码的情形,具体包括JSP页面中文乱码.JSP源文件中文乱码.GET 请求的请求参数为中文乱码 和 POST 请求的请求参数为中文乱码四种情形,并针对每种情形给出了相应的终极解决方案. 一. JSP页面与JSP源文件乱码 在介绍JSP页面与JSP源文件的乱码问题前,首先我们必须对JSP页面中文乱码问题与JSP源文件中文乱码问题有一个清晰的概念,即: JSP页面中文乱码问题是指用户在浏览器看到的服务器所返回的jsp页面中,中文字符不能正

post请求乱码

jsp页面中    <meta http-equiv="content-type" content="text/html; charset=UTF-8">通知浏览器以utf-8解码 get请求编码方式和post请求提交编码方式不同,get是把数据直接放到url中,例如以上的uname,IE浏览器先对中文进行utf-8编码(一个中文3个字符表示 太长),继而为了缩短字符又用ISO8859-1编码后传递给服务器.服务器的doGet方法中要先进行ISO8859

JSP中文乱码问题《转》

之前总是碰到JSP页面乱码的问题,每次都是现在网上搜,然后胡乱改,改完也不明白原因. 这次正好作下总结,中文乱码就是因为编码不符,可能出现乱码有四个地方: 1 JSP编码乱码 2 HTML编码乱码 3 request获取数据乱码 4 response输出信息乱码 5 Cookie导致的编码问题 下面将会对上面几种情况进行介绍: JSP乱码 这种是最常见的,设置编码的位置位于JSP的第一行,如果在Eclipse中新建一个JSP默认是下面这种: <%@ page language="java&

javaEE jsp 中文乱码问题

如果使用Tomcat服务器,在提交过程中,经常会出现中文乱码问题.乱码问题分为两个方面: 1.中文无法显示 有些JSP中,中文根本无法显示.通常的原因是没有把文件头的字符集设置为中文字符集.一定要保证文件头上写明: <%@ page language="java" contentType="text/html;charset=gb2312"%> 或者 <%@ page language="java" pageEncoding=&