1. 请编写一个简单的过滤器HelloFilter ,每当经过这个过滤器时都能向控制台输出字符串
packagefilters;
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
{
publicvoiddestroy(){ }
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws
IOException,ServletException{
System.out.println(“”);
}
publicvoid init(FilterConfig arg0)throws ServletException{ }
}
配置:
<filter> <filter-name>Check</filter-name>
<filter-class>filters. HelloFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Check</filter-name>
<url-pattern>/UI/*</url-pattern>
</filter-mapping>
2. java过滤器怎么写
在web.xml中配置过滤器
encoding
此处是自己已实现filter类的目录
encoding
utf-8
此处是要过滤的路径
encoding
3. 过滤器怎么写
英文版
filtrator; strainer; absorber; leach; sieve; percolator; filter; purifier; cleaning strainer; filter filtrator purifier; strainer; cold filter; inlet rose box; pass filter; rose head; filter apparatus
中文版
过滤回器答
4. jsp\java 如何编写过滤器过滤特殊字符
package com.jing.common;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class IllegalCharacterFilter implements Filter {
private String[] characterParams = null;
private boolean OK=true;
public void init(FilterConfig config) throws ServletException {
// if(config.getInitParameter("characterParams").length()<1)
// OK=false;
// else
// this.characterParams = config.getInitParameter("characterParams").split(",");
System.out.println("初始化");
}
@SuppressWarnings("unchecked")
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest servletrequest = (HttpServletRequest) request;
HttpServletResponse servletresponse = (HttpServletResponse) response;
String param = "";
String paramValue = "";
//设置请求编码格式
servletresponse.setContentType("text/html");
servletresponse.setCharacterEncoding("UTF-8");
servletrequest.setCharacterEncoding("UTF-8");
java.util.Enumeration params = request.getParameterNames();
//循环读取参数
while (params.hasMoreElements()){
param = (String) params.nextElement(); //获取请求中的参数
String[] values = servletrequest.getParameterValues(param);//获得每个参数对应的值
for (int i = 0; i < values.length; i++) {
paramValue = values[i];
//转换目标字符变成对象字符,可以多个。后期扩展特殊字符库用于管理
paramValue = paramValue.replaceAll("'","");
paramValue = paramValue.replaceAll("@","");
paramValue = paramValue.replaceAll("胡锦涛","***");
//这里还可以增加,如领导人 自动转义成****,可以从数据库中读取非法关键字。
values[i] = paramValue;
}
//把转义后的参数重新放回request中
request.setAttribute(param, paramValue);
}
//继续向下 执行请求,如果有其他过滤器则执行过滤器
arg2.doFilter(request, response);
}
public void destroy() {
// TODO Auto-generated method stub
}
}
5. 在编写过滤器时,需要完成的方法
选A.doFilter()
6. 怎么写过滤器新手没有写过
package com.wk.filters;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*; // For Date class
/** Simple filter that prints a report on the standard output
* each time an associated servlet or JSP page is accessed.
*/
public class ReportFilter implements Filter {
private String charset = "UTF-8";
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)
throws ServletException, IOException {
request.setCharacterEncoding(charset);
response.setCharacterEncoding(charset);
chain.doFilter(request, response);
}
public void init(FilterConfig config)
throws ServletException {
}
public void destroy() {}
}
web.xml的配置
<filter>
<filter-name>Reporter</filter-name>
<filter-class>
com.wk.filters.ReportFilter
</filter-class>
</filter>
<!-- ... -->
<!-- Apply the Reporter filter to home page. -->
<filter-mapping>
<filter-name>Reporter</filter-name>
<url-pattern>/*</url-pattern>拦截所有的请求
</filter-mapping>
这样就可以了。如果不行多给我一点信息,帮你解决。希望对你有帮助。
7. 请填写过滤器名称怎么写
应该是过滤器的品牌吧。
希望帮到你。
8. 用C++编写一个文本过滤器
|文static WCHAR szFilter[]=L"可执行文件(*.exe)|*.exe|文本文件(*.txt)|*.txt|Word文档(.doc)|*.doc||";
CFileDialog dlg(TRUE,NULL,NULL,OFN_ALLOWMULTISELECT,szFilter);
假设你用ListCtrl控件,就用下面的代码实版现
if(dlg.DoModal()==IDOK)
{
权this->PathList.ResetContent();
POSITION pos=dlg.GetStartPosition();
while(pos)
{
this->PathList.AddString(dlg.GetNextPathName(pos));
}
}
9. 如何在MyEclipse中写一个过滤器
开发一个过滤器的步骤:
1. 写一个类,让该类实现javax.servlet.Filter接口
我的类名是MyFilter
2. 实现接口中所有的方法
package com.mxl.web.Fileter;
import java.io.IOException;
import javax.servlet.Filter;//主要就是实现这个借口,不要选错了
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class MyFilter implements Filter {
public void destroy() {//销毁
}
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
//过滤器做什么在这里边写
}
public void init(FilterConfig arg0) throws ServletException {//初始化
}
}
3. 在web.xml中进行配置
<filter>
<filter-name>myfilter</filter-name>类名
<filter-class>com.kaishengit.web.filter.MyFilter</filter-class>类的完全限定名
</filter>
<filter-mapping>
<filter-name>myfilter</filter-name>
<url-pattern>/*</url-pattern>过滤所有的,无法请求到资源
</filter-mapping>
注意:
filter在容器启动时会进行初始化init操作