我思故我強(qiáng)

          SSH中 struts hibernate spring 各起什么作用?

          簡單的說:

          struts 控制用的

          hibernate 操作數(shù)據(jù)庫的

          spring 用解耦的
          詳細(xì)的說:

          STRUTS SSH 框架中起控制的作用 , 其核心是 Controller, ActionServlet, ActionServlet 的核心就是 Struts-confi g.xml. 主要控制邏輯關(guān)系的處理 .

          hibernate 是數(shù)據(jù)持久化層 , 是一種新的對(duì)象、關(guān)系的映射工具 , 提供了從 Java 類到數(shù)據(jù)表的映射,也提供了數(shù)據(jù)查詢和恢復(fù)等機(jī)制 , 大大減少數(shù)據(jù)訪問的復(fù)雜度。把對(duì)數(shù)據(jù)庫的直接操作 , 轉(zhuǎn)換為對(duì)持久對(duì)象的操作 .

          SPRING 是一個(gè)輕量級(jí)的控制反轉(zhuǎn) (IoC) 和面向切面 (AOP) 的容器框架 , 面向接口的編程 , 由容器控制程序之間的(依賴)關(guān)系,而非傳統(tǒng)實(shí)現(xiàn)中,由程序代碼直接操控。這也就是所謂 控制反轉(zhuǎn) 的概念所在:(依賴)控制權(quán)由應(yīng)用代碼中轉(zhuǎn)到了外部容器,控制權(quán)的轉(zhuǎn)移,是所謂反轉(zhuǎn)。依賴注入,即組件之間的依賴關(guān)系由容器在運(yùn)行期決定,形象的來說,即由容器動(dòng)態(tài)的將某種依賴關(guān)系注入到組件之中
          起到的主要作用是解耦

          Struts spring Hibernate 在各層的作用

          1 struts 負(fù)責(zé) web .

          ActionFormBean 接收網(wǎng)頁中表單提交的數(shù)據(jù),然后通過 Action 進(jìn)行處理,再 Forward 到對(duì)應(yīng)的網(wǎng)頁。

          struts-config.xml 中定義 <action-mapping>, ActionServlet 會(huì)加載。

          2 spring 負(fù)責(zé)業(yè)務(wù)層管理,即 Service (或 Manager).

          1 service action 提供統(tǒng)計(jì)的調(diào)用接口,封裝持久層的 DAO.

          2 .可以寫一些自己的業(yè)務(wù)方法。

          3 .統(tǒng)一的 javabean 管理方法

          4 .聲明式事務(wù)管理

          5. 集成 Hiberante

          3 Hiberante ,負(fù)責(zé)持久化層,完成數(shù)據(jù)庫的 crud 操作

          hibernate 為持久層,提供 OR/Mapping

          它有一組 .hbm.xml 文件和 POJO, 是跟數(shù)據(jù)庫中的表相對(duì)應(yīng)的。然后定義 DAO ,這些是跟數(shù)據(jù)庫打交道的類,它們會(huì)使用 PO

          struts+spring+hibernate 的系統(tǒng)中,

          對(duì)象的調(diào)用流程是: jsp-> Action > Service ->DAO ->Hibernate

          數(shù)據(jù)的流向是 ActionFormBean 接受用戶的數(shù)據(jù), Action 將數(shù)據(jù)從 ActionFromBean 中取出,封裝成 VO PO,

          再調(diào)用業(yè)務(wù)層的 Bean 類,完成各種業(yè)務(wù)處理后再 forward 。而業(yè)務(wù)層 Bean 收到這個(gè) PO 對(duì)象之后,會(huì)調(diào)用 DAO 接口方法,進(jìn)行持久化操作。

          ?

          posted on 2008-02-29 15:19 李云澤 閱讀(7147) 評(píng)論(0)  編輯  收藏 所屬分類: HibernateSpring軟件設(shè)計(jì)Struts


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 台山市| 福海县| 乌兰察布市| 革吉县| 陕西省| 林甸县| 沐川县| 吉林市| 德昌县| 卓资县| 威海市| 白朗县| 华蓥市| 华亭县| 禄劝| 饶阳县| 洛川县| 五家渠市| 石河子市| 建水县| 泰兴市| 大洼县| 通海县| 漳平市| 布尔津县| 德保县| 松原市| 宁陕县| 诸暨市| 大英县| 家居| 孝义市| 诏安县| 涟源市| 华阴市| 阿坝| 海安县| 齐齐哈尔市| 竹山县| 恩施市| 巴南区|