1、我做一个jsp/servlet+javabean网站,数据库操作全部使用preparedstatement,
那么,我还用得着过滤字符串吗?
2、只在解决乱码问题时用过filter,但那时拷贝tomcat的,哪位大侠能告知我怎么自己写过滤器filter吗?
那么,我还用得着过滤字符串吗?
2、只在解决乱码问题时用过filter,但那时拷贝tomcat的,哪位大侠能告知我怎么自己写过滤器filter吗?
调试欢乐多
private String encoding; public String getEncoding() {
return encoding;
} public void setEncoding(String encoding) {
this.encoding = encoding;
} public void destroy() {
encoding = null;
//To change body of implemented methods use File | Settings | File Templates.
} public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
if(encoding!=null) servletRequest.setCharacterEncoding(encoding);
if(encoding!=null) servletResponse.setCharacterEncoding(encoding);
filterChain.doFilter(servletRequest,servletResponse);
} public void init(FilterConfig filterConfig) throws ServletException {
encoding = filterConfig.getInitParameter("encoding");
}
}我写的一个,LZ可以看看。这里的encoding是在web.xml配置filter时候的parameter。
我是这样配置的:
<filter>
<filter-name>SetCharsetEncodingFilter</filter-name>
<display-name>SetCharsetEncodingFilter</display-name>
<description>SetCharsetEncodingFilter</description>
<filter-class>com.yesky.utils.SetCharsetEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SetCharsetEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
=====================================
可是我不明白这里的语法,也不知哪个方法是干什么用的,能大概帮我讲解一下吗?
一位迷人的女郎夏天开着车子到全国旅行,由于天气实在太热,她全身已经香汗淋漓。开到某个乡下地方时,她看到一座水池,于是她决定停车游个水,凉凉身,她脱光跳进水中,享受几分钟的清凉后,突然发现两位农夫躲在树丛下偷看。由于她的衣服摆在水池的另一边,不过靠近她身边有个澡盆,于是她拿起澡盆遮住身子,往那两位农夫走去。
“你们两个王八蛋,难道没别事好做吗?”她咆哮道,“你们知道我怎么想吗?”
“是的,女士。”个子较高的一位说,“你一定想问我们什么地方可以补你那浴盆上的大窟窿!” www.xiaohua007.com
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
if(encoding!=null) servletRequest.setCharacterEncoding(encoding);
if(encoding!=null) servletResponse.setCharacterEncoding(encoding);
filterChain.doFilter(servletRequest,servletResponse);
} public void init(FilterConfig filterConfig) throws ServletException {
encoding = filterConfig.getInitParameter("encoding");
}
============
servletRequest.setCharacterEncoding(encoding);里的servletRequest代表什么?
至于init()方法,是加载在web.xml里面配置的filter参数。
大概就是这样的,详细的流程楼主多看看资料,自己做一下,体会一下,其实很简单的。