這幾天都在學習怎麼使用SSH,首先是從Spring開始的,一些程式代碼都是參考《Java Web開發技術大全--JSP+Servlet+Struts+Hibernate+Spring+AJAX》這本書寫的。
1.反向控制(Inversion of Control,Ioc)和依賴注入
任何有應用價值的系統都至少有兩個類來互相配合工作,通過由一個主要的入口類來啟動程式,然後在這個類中建立另一個類的對象執行個體,并進行相應的操作。這種工作方式是由調用者主動建立的對象執行個體,是主動的工作方式。
而如果使用Ioc,建立對象的任務并不是由調用者來完成的,而是通過外部的協調者(在Spring中是Spring Ioc容器)來完成的。是以也可以認為調用者要依賴Spring Ioc容器來獲得(或者稱為注入)對象執行個體,是以也可以将Ioc稱為依賴注入。
2.面向方面程式設計(AOP)
手動建立的Java Project是不帶Spring功能的,需要我們通過手動設定來完成。具體操作是:myecplise->project capabilities->add spring capabilities。這樣project下就有了一個applicationContext.xml檔案。Spring就是通過配置該xml來實作其功能的。
Spring模式從簡單來講就是一個接口一個實作類,然後還有一個測試類。
我們這裡建立一個接口HelloService,實作類HelloServiceImpl,測試類FirstSpring。
HelloService.java
HelloServiceImpl.java
FirstSpring.java
applicationContext.xml
最後右鍵FirstSpring->run as->java application。第一個spring程式就完成了。
PS:手動配置JavaBean有兩種方式,上面提到的都是應用上下文(ApplicationContext)來配置的,下面介紹使用BeanFactory來進行配置的方法。
HelloService.java和HelloServiceImpy.java都不需要改變,隻需要改變測試類。
TeatBeanFactory.java