Hibernate、Spring和Struts2工作原理

Hibernate、Spring和Struts2工作原理
1. Hibernate 的工作原理
1.讀取並解析配置文件
2.讀取並解析映射信息,創建SessionFactory
3.打開Sesssion
4.創建事務Transation
5.持久化操作
6.提交事務
7.關閉Session
8.關閉SesstionFactory

2. Hibernate是如何延遲加載?
1. Hibernate2延遲加載實現:a)實體對象 b)集合(Collection)
2. Hibernate3 提供了屬性的延遲加載功能,當Hibernate在查詢數據的時候,數據並沒有存在與內存中,當程序真正對數據的操作時,對象才存在與內存中,就實現了延遲加載,他節省了服務器的內存開銷,從而提高了服務器的性能

3.說下Hibernate的緩存機制
   1. 內部緩存存在Hibernate中又叫一級緩存,屬於應用事物級緩存
   2. 二級緩存: a) 應用及緩存 b) 分佈式緩存
  條件:數據不會被第三方修改、數據大小在可接受範圍、數據更新頻率低、同一數據被系統頻繁使用、非關鍵數據

4. Struts工作機制? 
1.當用戶在頁面上進行操作時,生成了*.action的請求傳給struts.xml(MVC中的V)
2.服務器根據這個配置文件中所定義的action名稱,尋找匹配的處理方法:如果沒有定義method,則直接調用的是class裏面的類的execute方法,如果定義了method,則是調用的class類裏的method中所指明的方法(MVC中的C)
3.在method中進行處理,在這裏有可能採用若干高深莫測的方法,但都屬於較爲底層的工作,比如訪問數據庫等等(MVC 中的M)
4.方法處理完後(可能有一串的處理方法,但終究有一個方法是最終進行的),return了一個字符串,比如success、error等,並將這個字符串送回給struts.xml,struts.xml在前面action標籤內部定義的若干個result中,找到name屬性與返回字符傳相同的,然後根據type的類型,向指定頁面進行跳轉。(MVC中的C)
5.跳轉的頁面接受到了請求,生成頁面在瀏覽器裏進行顯示。(MVC中的V)

5. springMVC工作機制
   1.springmvc請所有的請求都提交給DispatcherServlet,它會委託應用系統的其他模塊負責負責對請求進行真正的處理工作。
   2.DispatcherServlet查詢一個或多個HandlerMapping,找到處理請求的Controller.
    3.DispatcherServlet請請求提交到目標Controller
   4.Controller進行業務邏輯處理後,會返回一個ModelAndView
   5.Dispathcher查詢一個或多個ViewResolver視圖解析器,找到ModelAndView對象指定的視圖對象
   6.視圖對象負責渲染返回給客戶端。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章