1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          ssm框架原理及流程(什么是ssm框架原理及流程)

          來源:互聯網轉載 時間:2024-05-09 03:14:58

          ssm框架原理是:將Spring、SpringMVC、MyBatis整合在一起,作為數據源較簡單的web項目的框架。流程是:Handler Mapping根據請求找到相應的Handler,調用業務邏輯進行處理,然后進行視圖解析即可。

          SSM框架簡介
          SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis兩個開源框架整合而成(SpringMVC是Spring中的部分內容)。SSM常作為數據源較簡單的web項目的框架。

          SpringMVC
          SpringMVC在項目中攔截用戶請求,它的核心Servlet即DispatcherServlet承擔中介的職責,將用戶請求通過HandlerMapping去匹配Controller,Controller就是具體對應請求所執行的操作。
          SpringMVC框架運行流程

          用戶將請求發送至DispatcherServlet;
          DispatcherServlet收到請求查詢一個或多個HandlerMapping,找到處理該請求的Handler;
          HandlerMapping根據請求找到相應的Handler,生成Handler對象返回給DispatcherServlet;
          DispatcherServlet通過HandlerAdapter調用Handler;
          Handler(Controller)調用業務邏輯(service)進行處理,處理完成返回ModelAndView;
          HandlerAdapter將Handler處理結果ModelAndView返回給DispatcherServlet;
          DispatcherServlet查詢一個或多個ViewReslover(視圖解析器),將ModelAndView傳給指定的ViewReslover;
          ViewReslover解析后返回具體View給DispatcherServlet;
          DispatcherServlet對View進行渲染(將模型數據填充至視圖中);
          DispatcherServlet響應用戶,View將結果顯示在客戶端。
          流程大致如下圖:

          DispatcherServlet是整個Spring MVC的核心,它負責接收HTTP請求,組織協調Spring MVC的各個組成部分,其主要的工作有以下3項:
          a. 截獲符合特定格式的URL請求;
          b. 初始化DispatcherServlet上下文對應的WebApplicationContext,并將其與業務層、持久層的WebApplicationContext建立關聯;
          c. 初始化Spring MVC的各個組件,并配裝到DispatcherServlet中。
          Spring
          Spring就像是整個項目中裝配bean的大工廠,在配置文件中可以指定使用特定的參數去調用實體類的構造方法來實例化對象。也可以稱之為項目中的粘合劑。
          Spring的核心思想是IOC(控制反轉),即不再需要程序員去顯式地new一個對象,而是讓Spring框架幫你來完成這一切。IOC容器負責實例化、定位、配置應用程序中的對象及建立這些對象間的依賴。Spring的目的就是讓對象與對象(模塊與模塊)之間的關系沒有通過代碼來關聯,都是通過配置類說明管理的(Spring根據這些配置,內部通過反射去動態的組裝對象)。
          IOC容器代表的就是org.springframework.beans包中的BeanFactory接口,其提供了IOC容器的基本功能;而org.springframework.context包下的ApplicationContext接口擴展了BeanFactory,還提供了與Spring AOP集成、國際化處理、事件傳播及提供不同層次的context實現。
          簡單說,BeanFactory提供了IOC容器最基本功能,而ApplicationContext則增加了更多支持企業級功能支持。ApplicationContext完全繼承BeanFactory,因而BeanFactory所具有的語義也適用于ApplicationContext。
          Spring運行流程

          加載配置文件,ApplicationContext接口。配置文件中的bean的信息被加載在HashMap中,一個bean通常包括,id,class,property等,bean的id對應HashMap中的key,HashMap中的value就是bean。
          調用getBean方法,getBean是用來獲取applicationContext.xml文件里bean的,參數是bean的id。一般情況都會強制轉換成對應的業務層(接口)。
          調用業務層(接口實現)的方法。
          bean中的內容是怎么注入進去的?簡單來講,就是在實例化一個bean時,實際上就實例化了類,它通過反射調用類中set方法將事先保存在HashMap中的類屬性注入到類中。這樣就回到了我們Java最原始的地方,對象.屬性,對象.方法。
          Mybatis
          Mybatis是對jdbc的封裝,它讓數據庫底層操作變的透明。Mybatis的操作都是圍繞一個sqlSessionFactory實例展開的。mybatis通過配置文件關聯到各實體類的Mapper文件,Mapper文件中配置了每個類對數據庫所需進行的sql語句映射。在每次與數據庫交互時,通過sqlSessionFactory拿到一個sqlSession,再執行sql命令。
          Mybatis通過MapperProxy動態代理dao,也就是說,當執行自己寫的dao里面的方法的時候,其實是對應的MapperProxy在代理。
          Mybatis運行原理

          加載配置文件
          將SQL的配置信息加載成為一個個MappedStatement對象,包括了參數映射配置,執行的SQL語句,結果映射配置,存儲在內存中。
          SQL解析
          當API接口層接收到調用請求時,會接收到傳入SQL的ID和傳入對象(可以是Map/JavaBean或者基本數據類型),Mybatis會根據SQL的ID找到對應的MappedStatement,然后根據傳入的參數對象MappedStatement進行解析,解析后可以得到最終要執行的SQL語句和參數。
          SQL執行
          將最終得到的SQL和參數拿到數據庫執行,得到操作數據庫的結果。
          結果映射
          將操作數據庫的結果按照映射的配置進行轉換,可以轉換成HashMap/JavaBean或者基本數據類型,并將最終的結果返回。

          看完上述內容,你們對什么是ssm框架原理及流程有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注本站行業資訊頻道,感謝大家的支持。

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          小投資生財之道怎么做才好?1、小投資和理財要量力而行投資時一定要根據自己的實際情況制定自己的理財計劃,分清個人或家庭的生活費、存款、日常消費、理財錢,將理財錢分成不同的比例進行投資。同時,投資的時候一定要根據自己現有的資金進行投資,量力而行。2、選擇最適合的理財方式做小投資理財不要隨波逐流,每個人的財產狀況、風險承受能力、收益預期都不一樣,對投資理財產品的選擇也不一樣。所以,選擇自己了解的適合自己...

          隨著社會越來越發達,大家都選擇在網絡上汲取相關知識內容,比如為什么唯品會不能加入購物車,為了更好的解答大家的問題,小編也是翻閱整理了相應內容,下面就一起來看一下吧!使用唯品會的用戶,發現唯品會不能加入購物車,想知道為什么商品不能加入購物車,不清楚究竟怎么回事的,就一起來看看這個答案吧。(資料圖片)為什么唯品會不能加入購物車1、該商品是預售,預售商品不可以加入購物車2、商品缺貨無法加入購物車3、系統...

          浙江稠州銀行是私人銀行嗎?浙江稠州銀行不是私人的。浙江稠州商業銀行是一家具有獨立法人資格的股份制商業銀行,成立于1987年6月,是義烏第一家地方性金融機構。其前身為義烏市稠州城市信用合作社。浙江稠州商業銀行曾獲得義烏市的”經濟發展貢獻獎”“綜合實力獎” 等獎項,曾被評為"AAA級納稅信譽企業”浙江稠州商業銀行,其前身為義烏市稠州...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>