2 回答

TA貢獻1805條經驗 獲得超10個贊
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | class CController{ public function filterAccessControl($filterChain) { //這里是你的邏輯
$filterChain->run(); } }
class UserController extents CController{ public function filters() { return array{ 'AccessControl' // 這里就過濾了 } } public function actionIndex(){
} } |

TA貢獻1825條經驗 獲得超4個贊
弄過濾器,要實現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>來配置你所要攔截的東西
- 2 回答
- 0 關注
- 802 瀏覽
添加回答
舉報