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.視圖對象負責渲染返回給客戶端。
相關文章
相關標籤/搜索