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操作