我們使用裝飾者對request進行增強,進而使得get和post使用request.getparameter()獲得的資料沒有亂碼:
首先來一個servlet,用于處理用戶端請求:
建立httpservletrequest的增強類,借助httpservletrequestwrapper:
在用戶端向伺服器發送請求時,我們需要對其進行攔截:
用戶端頁面:
寫一個servlet:
對請求進行攔截的過濾器:
動态代了解決這個問題,将增強放到了過濾器中,不同之處他沒有專門的增強類,而是通過動态代理技術在運作期間動态生成的,對于invocationhandler接口采用了匿名内部類的方式。