SpringMVC的攔截器和上傳組件

 

 

                                                                   攔截器

攔截器的介紹:SpringMVC的處理器攔截器,類似於Servlet開發中的過濾器Filter,用於對處理器進行預處理和後處理

 

攔截器的使用場景:

        1.日誌記錄

                記錄請求信息的日誌,以便進行信息的監控、信息統計、計算PV(Page View)等等。

         2.權限檢查

                如登陸檢查,進入處理器檢測是否登陸,如果沒有登陸,直接返回登陸頁面

         3.性能監控

                有時候系統在某段時間莫名其妙的慢,可以通過攔截器在進入處理器之前記錄開始時間,在處理完後記錄結束時間,從而得到該請求的處理時間

          4.通用行爲:、

                讀取cookie得到用戶信息並將用戶對象放入請求,從而更加方便後續流程的使用,還有如提取Locale、Theme信息等,只要是多個處理器都需要的即可使用攔截器實現

          5.OpenSessionView

                如Hibernate,在進入處理器之前打開Session、在完成後關閉Session。......本質也是AOP,也就是符合橫切關注點的多有功能都可以放入攔截器實現

 

使用方法:

        實現攔截器接口

       postHandle()方法可以用來定義一些公共的變量,然後再視圖中就可以獲取到了。

        afterCompletion()方法使用的不是很多。

 

 檢查是否登陸:

        1.新建一個包,並在該包下創建一個MyLoginInterceptor類並讓該類實現HandlerInterceptor接口

        2.在spring-mvc.xml文件中配置一下,你要攔截哪一個目錄

       3.再自己寫的攔截器中寫上如下的代碼,重啓服務器即可完成攔截

               

                                                                上傳          

springMvc提供了一個上傳的組件:

    1.需要在form表單中添加 enctype="multipart/form-data"屬性。這是必須要的。

    2.在表單中使用<input type="file" name="file"/>  ,這裏的type必須時file才行

          

    3.在spring-mvc.xml文件中進行配置

    4.在controller類中的代碼

           

注意事項:

 

然後就可以正常的上傳文件了。

 

 

 

 

                                                         歡迎關注小編的微信公衆號(java架構師資源分享)

 

    

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章