1、首先Filter的實作基礎
使用者請求到達,經過Filter到背景,背景處理完成,到Filter,傳回給使用者
Controller是怎麼擷取參數和傳回參數的呢?
Controller主要通過這三個方法擷取參數
Controller主要通過這兩個流輸出結果到前端
是以可以重寫ServletRequest的方法讓Controller在去參數時得到的是我們修改過的參數
重寫ServletResponse的方法讓Controller在往前端寫結果時寫到我們的重寫類裡面,然後處理這些資料,再重新寫到前端
ServletRequest重寫
ServletResponse重寫
<code>//重定向輸出流寫到</code>DataOutputStream
<code>//重定向輸出流寫到</code>ByteArrayOutputStream
//ByteArrayOutputStream 接受Controller寫入的資料,并以byte[]形式傳回給Filter
//Filter重寫request和response并以chain的形式傳遞給Controller,Controller擷取或輸出資料都講調用RequestWrapper,ResponseWrapper