1 回答

TA貢獻1963條經(jīng)驗 獲得超6個贊
ssh 現(xiàn)三層架構(gòu),和每層使用的技術(shù)如下:
1.Struts應(yīng)用在表示層,它是基于MVC的WEB應(yīng)用框架。
Strutts提供了中央控制器(ActionServlet)和應(yīng)用控制器(Action)。ActionServlet是Struts框架的核心,采用的是前端控制模式;Action則負責(zé)完成對服務(wù)的調(diào)用,對ActionServlet接受并分發(fā)下來請求進行處理。可以重寫ActionServlet,也可以直接使用,然后繼承Action,使其完成我們要求的功能。有了Struts提供的控制器,再運用JSTL標(biāo)簽、Struts標(biāo)簽庫中的標(biāo)簽配以JSP或HTML文件,就是Struts中的視圖。另外,用于視圖與控制器之間表單數(shù)據(jù)傳輸?shù)腁ctionFormBean,也被歸于到了視圖中。Struts并沒有定義模型層的具體實現(xiàn)。一般情況下,Action中所使用的服務(wù)是由業(yè)務(wù)層提供的。Struts中還有不可缺少的配置文件。該配置文件描述了用戶請求路徑和Action映射關(guān)系的信息。ActionServlet通過解析此配置文件得知需把用戶的請求發(fā)往哪一個Action。
2.Hibernate是一種映射的工具,完全著眼于關(guān)系數(shù)據(jù)庫的對象——關(guān)系映射,管理對象到數(shù)據(jù)庫的映射,提供數(shù)據(jù)查詢和獲取數(shù)據(jù)的方法。在持久層中,不僅可以使用Hibernate進行映射,還可以使用iBATIS進行SQL語句與對象之間的映射,此外,也可以直接使用JDBC對數(shù)據(jù)庫進行操作。至于使用那一種工具實現(xiàn)持久化,可以根據(jù)自己的需求視情況而定。而Hibernate映射是否復(fù)雜取決于領(lǐng)域?qū)ο蟮年P(guān)系是否復(fù)雜。
3.Spring貫穿于WEB應(yīng)用中,它為我們管理對象提供了方便,降低了層與層之間的耦合度,將程序員從繁瑣的事務(wù)、安全和分布式處理中解放出來,從而把更多的精力放在業(yè)務(wù)上。如果應(yīng)用程序才用了Struts+Hibernate的架構(gòu),Spring可以幫助整合兩者。在創(chuàng)建對象時,可以通過Spring進行注入;對于事務(wù)管理,可以通過Spring集成聲明式事務(wù)管理到到應(yīng)用程序中等。
添加回答
舉報