導航:首頁 > 凈水問答 > java過濾器教程

java過濾器教程

發布時間:2024-05-21 11:39:58

A. java FileFilter 過濾只保留文件夾和.xls文件

代碼如下,供參考

import java.io.File;
import java.io.FileFilter;
public class Test {
public static void main(String[] args) {
File file = new File("E:\");
File[] files = file.listFiles(new FileFilter(){
@Override
public boolean accept(File pathname) {
// 判斷文件名是目錄 或 .xls 結尾
if (pathname.isDirectory() || pathname.getName().toUpperCase().endsWith(".XLS")) {
return true;
}
return false;
}});

for (File f : files) {
System.out.println(f.getName());
}
}
}

B. 編寫一個過濾器,把當前目錄下後綴為java的文件取出,用java怎麼編

public class Test {

public static void main(String[] args) {
dir = new File("");
String dirString = dir.getAbsolutePath();
System.out.println(dirString);
Filter filter = new Filter(".java");
dir = new File(dirString);
File[] files = dir.listFiles(filter);
for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getName());
}
}

}

class Filter implements FilenameFilter{
String filterString;
public Filter(String fString){
this.filterString = fString;
}
public boolean accept(File dir, String name) {
return name.endsWith(filterString);
}
}

C. 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
}
}

D. java過濾器中的FilterChain對象

1、什麼是過濾器?
與Servlet相似,過濾器是一些web應用程序組件,可以綁定到一個web應用程序中。但是與其他web應用程序組件不同的是,過濾器是"鏈"在容器的處理過程中的。這就意味著它們會在servlet處理器之前訪問一個進入的請求,並且在外發響應信息返回到客戶前訪問這些響應信息。這種訪問使得過濾器可以檢查並修改請求和響應的內容。
2、過濾鏈FilterChain
兩個過濾器,EncodingFilter負責設置編碼,SecurityFilter負責控制許可權,伺服器會按照web.xml中過濾器定義的先後循序組裝成一條鏈,然後一次執行其中的doFilter()方法。執行的順序就如下圖所示,執行第一個過濾器的chain.doFilter()之前的代碼,第二個過濾器的chain.doFilter()之前的代碼,請求的資源,第二個過濾器的chain.doFilter()之後的代碼,第一個過濾器的chain.doFilter()之後的代碼,最後返回響應。
3、過濾鏈的好處是,執行過程中任何時候都可以打斷,只要不執行chain.doFilter()就不會再執行後面的過濾器和請求的內容。而在實際使用時,就要特別注意過濾鏈的執行順序問題,像EncodingFilter就一定要放在所有Filter之前,這樣才能確保在使用請求中的數據前設置正確的編碼。

E. java 文件過濾器怎麼實現。

import java.io.File;
import java.io.FilenameFilter;

/**
* 文件過濾器的簡單實現
*
* @author ajaxfan
* @date 2010-04-17
*/
public class FileNameFilterDemo {
public static void main(String[] args) {
list("d:/");
}

/**
* 列出特定路徑下的txt文件
*
* @param directoryName
* 路徑名
*/
private static void list(String directoryName) {
File dir = new File(directoryName);
// 確定該路徑指向一個目錄
if (dir.exists() && dir.isDirectory()) {
// 列出所有結尾為txt的文件
File[] files = dir.listFiles(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
return name.endsWith("txt");
}
});
System.out.println(java.util.Arrays.toString(files));
}
}
}

F. java如何創建過濾器

弄過濾器,要實現filter介面
主要是用過濾器處理中文編碼,至於要用來做什麼,再自己寫比如許可權控制,登錄驗證,之類

//下面這是一個類。。。。
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;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class EncodingFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("GBK");//處理編碼
response.setCharacterEncoding("GBK");//處理編碼

chain.doFilter(request, response);//讓過濾器執行下一個請求
}

public void destroy() {}

public void init(FilterConfig arg0) throws ServletException {}
}

//下面這個是在web.xml下的配置

<filter>
<filter-name>encoding</filter-name>
<filter-class>
剛剛創建的那個實現filter介面的類的位置
例如:com.temp.filter.EncodingFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>*.jsp這個是以jsp為後綴的文件都攔截下來</url-pattern>
</filter-mapping>
可以寫多個的<filter-mapping>來配置你所要攔截的東西

G. Javaweb 鐨勮繃婊ゅ櫒鏄濡備綍瀹炵幇鐨勶紵

Javaweb 鐨勮繃婊ゅ櫒鏄閫氳繃瀹炵幇 Filter 鎺ュ彛鏉ュ疄鐜扮殑銆侳ilter 鎺ュ彛鏈変笁涓鏂規硶錛歩nit()銆乨oFilter() 鍜 destroy()銆傚叾涓錛宨nit() 鏂規硶鐢ㄤ簬鍒濆嬪寲榪囨護鍣錛宒oFilter() 鏂規硶鐢ㄤ簬榪囨護璇鋒眰鍜屽搷搴旓紝destroy() 鏂規硶鐢ㄤ簬閿姣佽繃婊ゅ櫒銆傚湪 web.xml 鏂囦歡涓浣跨敤 鍏冪礌瀵圭紪鍐欑殑 filter 綾昏繘琛屾敞鍐岋紝騫惰劇疆瀹冩墍鑳芥嫤鎴鐨勮祫婧愩

H. filter的使用 java 過濾器的幾種使用方法

過濾器來

過濾器是處於客戶端自與伺服器資源文件之間的一道過濾網,在訪問資源文件之前,通過一系列的過濾器對請求進行修改、判斷等,把不符合規則的請求在中途攔截或修改。也可以對響應進行過濾,攔截或修改響應。

過濾器一般用於登錄許可權驗證、資源訪問許可權控制、敏感詞彙過濾、字元編碼轉換等等操作,便於代碼重用,不必每個servlet中還要進行相應的操作。

I. java里如何從一個字元串里過濾掉一個子串

通過replaceAll方法進行替換,也就是說將「子串」替換為空,舉例:
String str = "aaaaaabaaaabaaa".replaceAll("b", "");//第一個參數是需要被替換的內容,第二個是被替換成的內容
System.out.print(str);//輸出替換後的結果
結果就是:aaaaaaaaaaaaa。

閱讀全文

與java過濾器教程相關的資料

熱點內容
開個凈水廠需要些什麼 瀏覽:240
05奧德賽汽油濾芯怎麼拆 瀏覽:803
可更換空氣過濾器 瀏覽:557
江蘇電鍍含氰廢水處理價格如何 瀏覽:564
如何凈化生活污水養殖 瀏覽:512
樹脂熱線性膨脹系數 瀏覽:26
污水處理廠設備單機運行方案 瀏覽:878
離子交換吸附原 瀏覽:330
樂山污水處理設備批發多少錢 瀏覽:43
如何維修污水浸泡的牆 瀏覽:164
中國凈水服務網平台怎麼樣 瀏覽:891
怎樣去滴定硫酸根離子濃度 瀏覽:194
樹脂釋迦佛小的 瀏覽:638
廢水處理怎麼學 瀏覽:465
17款思域空調濾芯怎麼換 瀏覽:282
凈水器排水孔是干什麼用的 瀏覽:657
AS樹脂高溫分解生成什麼 瀏覽:454
怎麼處理飲水機水桶里的水垢 瀏覽:255
如何處理濃氟廢水 瀏覽:32
GE和bwt即熱凈水機哪個好 瀏覽:738