溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

spring boot filter實(shí)現(xiàn)

發(fā)布時(shí)間:2020-08-04 13:55:39 來源:網(wǎng)絡(luò) 閱讀:19646 作者:xiaosawuhen 欄目:開發(fā)技術(shù)

spring boot filter實(shí)現(xiàn)

1.注解方式直接配置

@Component
@ServletComponentScan
@WebFilter(urlPatterns = "/*",filterName = "loginFilter")
public class LoginFilter implements Filter{
}

1、@Component 這個(gè)注解的目的是將LoginFilter交給容器來處理。也就是讓LoginFilter起作用

2、@ServletComponentScan 這個(gè)使用來掃描@WebFilter 的讓@WebFilter起作用。當(dāng)然對于servlet線管注解也是可以的。

這個(gè)@ServletComponentScan最好寫在Apllication這個(gè)上面,通用配置。

我這里因?yàn)橹挥幸粋€(gè)Filter所以沒有寫在Application上面。

3、@WebFilter 這個(gè)用處顯而易見,針對于什么鏈接做過濾,filter的名稱是為什么。

2.@Bean形式配置

直接繼承Filter

public class LoginFilter implements Filter{
}

或繼承GenericFilterBean

public class LoginFilter extends GenericFilterBean{
}
@SpringBootApplication  
public class SpringRestApplication {  
public static void main(String[] args) {  
SpringApplication.run(SpringRestApplication.class, args);  
}  
@Bean  
public FilterRegistrationBean  filterRegistrationBean() {  
FilterRegistrationBean registrationBean = new FilterRegistrationBean();  
HTTPBasicAuthorizeAttribute httpBasicFilter = new HTTPBasicAuthorizeAttribute();  
registrationBean.setFilter(httpBasicFilter);  
List<String> urlPatterns = new ArrayList<String>();  
urlPatterns.add("/user/*");  
registrationBean.setUrlPatterns(urlPatterns);  
return registrationBean;  
}  
}


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI