非ioc
方式:
1、struts2
對httpservletrequest
和servletcontext
進行了封裝,構造了三個
map物件來替代這三種物件
public class loginaction implements action
2、想要在
action
類中直接使用
這些物件
public class loginaction implements action
ioc方式:
1、在action
類中實現某些特定的介面的方式,讓
struts2
框架在執行時向
action
例項注入
request
、session
和物件。
public map request;//在這裡將通過ioc的方式注入,注意是map型別
public map session;
public user user;
public string execute() throws exception }
2、action
類還可以實現
servletrequestaware
和servletcontextaware
介面,由
struts2
框架向action
例項注入
和servletcontext
物件。
public class loginaction implements action,servletrequestaware,servletcontextaware
}
ioc(inversion of control):控制反轉
不建立物件,但是描述建立它們的方式。在**中不直接與物件和服務連線,但在配置檔案中描述哪乙個元件需要哪一項服務、容器負責將這些聯絡在一起。
ioc的本質是實現了物件之間依賴關係的轉移。通過使用
spring
框架,開發人員將不必自己在**中維護物件之間的依賴關係,只需在配置檔案中進行設定就可以了。
spring
會自動地依據配置資訊來維護物件之間的依賴關係,將被依賴的物件設定給依賴物件。(依賴)控制權由應用**中轉到了外部容器,控制權的轉移,即所謂的「反轉」,換句話說,就是由容器控制程式之間的(依賴)關係,而非傳統實現中由程式**直接操控。
Struts安裝與使用
struts可以執行在任何乙個支援jsp1.2和servlet2.3的web container中struts將所有的請求提交到同乙個中心控制器,org.apache.struts.action.actionservlet 類 web.xml配置 servlet name action servle...
Struts2與Struts1的區別
struts2其實並不是乙個陌生的web框架,struts2是以webwork的設計思想為核心,吸收了struts1的優點,因此,可以認為struts2是struts1和webwork結合的產物。簡單來說二者的區別是 乙個是stuts1 乙個是stuts2,這是最大的區別,技術方面,stuts1有個...
Struts2與Struts1的區別
struts2其實並不是乙個陌生的web框架,struts2是以webwork的設計思想為核心,吸收了struts1的優點,因此,可以認為struts2是struts1和webwork結合的產物。簡單來說二者的區別是 乙個是stuts1 乙個是stuts2,這是最大的區別,技術方面,stuts1有個...