• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      關于SSH框架集的介紹

      2017-09-18 16:16:32彭海鈴
      魅力中國 2017年11期

      彭海鈴

      摘要:SSH框架集,是現在大多數軟件設計過程中都會使用的一種框架集。而這種框架是基于MVC的開發(fā),且MVC模式已經成為現代J2EE開發(fā)中的一種常用模式,且受到越來越多JSP、PHP等開發(fā)者的歡迎。本文重點闡述了關于SSH框架集的介紹,為相關工作人員提供參考。

      關鍵詞:SSH框架集;MVC開發(fā);Spring

      SSH框架集,是現在大多數軟件設計過程中都會使用的一種框架集。而這種框架是基于MVC的開發(fā),且MVC模式已經成為現代J2EE開發(fā)中的一種常用模式,且受到越來越多JSP、PHP等開發(fā)者的歡迎。

      MVC模式,分別是模型(Model)、視圖(view)、控制器(Controller)。應用程序被分割成這三大部分之后,各自處理自己的任務。視圖層通過提取用戶的輸入信息,提交到控制器之后,控制器根據某種選擇來決定這個請求交由給模型層來處理,模型層根據業(yè)務邏輯的代碼處理用戶請求并返回數據,并最終用視圖層展示給用戶。

      而前面提到的SSH框架集,就是很好的對應了MVC模式的開發(fā)使用。這種Struts2+Hibernate+Spring的三大框架整合,契合著MVC模式的三層對象。其中Struts對應著前臺的控制層,而Spring則負責實體bean的業(yè)務邏輯處理,至于Hibernate則是負責數據庫的交接以及使用Dao接口來完成操作。

      Struts2,以WebWork為核心,采用攔截器的機制來處理用戶的請求從而使得業(yè)務邏輯處理與Servlet脫離。相比較原生態(tài)的Strutsl或JSP+Servlet的開發(fā)模式,Struts2通過Action和攔截器來處理用戶需求,從而使得JSP和Servlet解耦,擺脫了以往難于測試的場面。通過初始化Servlet容器,加載web.xml,調用FilterDispatcher來詢問ActionMapper來決定調用哪個Action,通過調用Action來決定這個請求對應哪個業(yè)務處理邏輯。

      Spring,使用基本的實體JavaBean來完成以前只能用EJB完成的事情。而其核心則是控制反轉(10C)和面向切面編程(AOP)。使用Spring,意味著一個對象的創(chuàng)建再也不是自己new出來的,而是全權交給了IOC容器去實例化。與此同時,Spring通過采用依賴注入(DI)的方式,通過屬性的Setter和Getter方法來注入這個對象的屬性,這樣的好處就是不完全依賴于容器的API,且查詢依賴與代碼實現了解耦。而AOP,則是將應用的業(yè)務邏輯和系統(tǒng)級服務(例如事務)分離開來,進行內聚性的開發(fā),應用對象只負責完成業(yè)務邏輯而不關心日志或者事務的處理。

      而Hibernate,則是負責了跟數據庫的交接。通過持久化數據對象,進行對象關系的映射,并以對象的角度來訪問數據庫。通過封裝JDBC,使得開發(fā)人員可以以面向對象編程的思想來操控數據庫,從而擺脫了以往使用JDBC編程時的“死板”操作。通過hibernate.cfg.xml文件來取代以往的JDBC連接數據庫的一大串代碼,通過XXX(實體Bean的類名).hbm.xml文件來與數據庫的具體表進行映射。并且Hibernate有自己的HQL語句,與數據庫的SOL語句相似,但不同的是HQL語句在面向對象編程的角度上,通過Session的createQuery方法創(chuàng)建戶一個query對象,由這個對象來完成對數據庫的增刪改查等操作。通過Struts2中Action的返回值,來調用Dao層中的業(yè)務處理。

      SSH框架集,已經成為越來越多開發(fā)者的首選框架。這種分層架構體系的思想,規(guī)劃著各個層次之間應該做的事情,從而使得塊與塊之間不再混淆。這樣不僅實現了視圖,控制器和模型的徹底分離,還實現了業(yè)務邏輯與持久層的分離。這樣的好處就是無論前臺做了什么改動,后臺只需要小小的變化,并不會造成影響,大大提高了系統(tǒng)的復用性以及開發(fā)效率。

      (作者單位:北京理工大學珠海學院)endprint

      厦门市| 福泉市| 松原市| 广丰县| 丹巴县| 西乡县| 博客| 吴旗县| 天津市| 双辽市| 郎溪县| 望江县| 霞浦县| 宁海县| 金湖县| 定兴县| 东乌珠穆沁旗| 涿州市| 泾川县| 海丰县| 开原市| 凉城县| 桐梓县| 班玛县| 六枝特区| 什邡市| 奉新县| 额尔古纳市| 屏东市| 合江县| 江源县| 即墨市| 巍山| 邵阳市| 通城县| 青岛市| 长顺县| 班玛县| 沙河市| 南靖县| 黑山县|