java过滤特殊字符的问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 04:06:16
在jsp页面中有一个字符串“A++”提交到action后我输出来变成了“A ”可能是把++当特殊字符处理了,我要在action里输出“A++”应该怎么处理呢

"+"在URL中会被当作空格处理。
必须使用URLEncoder将其变成URL编码。
或者使用 javascript 的 encodeURIComponent(url) 函数对URL进行编码转换。

二楼给出的像是字符编码的过滤器
求教类似于这个问题的过滤器该怎么写?

写个代码过滤器就OK了

加一个过滤器程序吧。
package com.xunyehulian.struts ;
import javax.servlet.* ;
import javax.servlet.http.*;
import java.io.* ;
public class EncodingFilter implements Filter{
public void init( FilterConfig config ){

}

public void doFilter( ServletRequest request ,
ServletResponse response ,
FilterChain chain )
throws ServletException , IOException
{
HttpServletRequest req = (HttpServletRequest) request ;
HttpServletResponse res = (HttpServletResponse ) response ;
req.setCharacterEncoding( "GBK" ) ;
res.setCharacterEncoding( "GBK" ) ;
chain.doFilter( req , res ) ;
}
public void destroy(){}
}

然后在WEB-INF文件夹下的web.