JSP中用过滤器Filter过滤文字如何弄?
嗯,像有的论坛一样,比如输入些不道德的文字时,系统会自动的转为*的,我想用过滤器来做,但是不知道怎么把获取过的内容又放回去的,下面是我的doFilter方法:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) {
try {
String content = request.getParameter( "content ");
if (content != null) {
content = content.replaceAll( "a ", "b ");
}
filterChain.doFilter(request, response);
} catch (
ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
} catch (
IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
}
请问怎么让修改过的content又放回到request里?让过滤后的那个页面里能通过request.getParameter( "content ")来获取content的值 ?
不知道我的问题讲得清不清楚,第一次在这发贴问,哈哈,好紧张!!!-_-!!!
------解决方案--------------------把你的过滤过的内容放到request对象里面
request.setAttribute( " ", " ");
然后过滤后交给后面处理的JSP页面或者Servlet
这个request对象并没有改变
------解决方案--------------------request.setAttribute( "content ",content);
------解决方案--------------------在过滤器中难道是转发不重定向么
是不是改用session.serArttribute( "content ");
呢?
------解决方案--------------------我看错了 他好像说的是怎么用request.getParameter( "content ");
而不是用request.getAttribute( "content ")去接...迷茫~> .