1.Spring框架入門
阿新 • • 發佈:2018-03-13
-- doc face ref cas 步驟 div 路徑 ica
**Spring框架的IOC核心功能快速入門(必須掌握開發的步驟)** 0. 什麽是IOC的功能? * IOC -- Inverse of Control,控制反轉,將對象的創建權反轉給Spring!! * 使用IOC可以解決的程序耦合性高的問題!! 1. 步驟一:下載Spring框架的開發包 * 下載路徑為:http://repo.spring.io/webapp/search/artifact/?0&q=spring-framework * 解壓後的目錄結構如下 * docs -- API和開發規範 * libs -- jar包和源碼 * Spring框架的jar包的特點是每個jar包都有3個(使用的jar包、文檔的jar包和源代碼的jar包) * schema -- 約束 2. 步驟二:創建JavaWEB項目,引入Spring的開發包 * 引入Spring框架IOC核心功能需要的具體的jar包 * Spring框架的IOC的功能,那麽根據Spring框架的體系結構圖能看到,只需要引入如下的jar包 * 在spring-framework-3.2.0.RELEASE/libs/下 * Beans * Core * Context * Expression Language * Spring框架也需要引入日誌相關的jar包 * 在spring-framework-3.0.2.RELEASE-dependencies/org.apache.commons/com.springsource.org.apache.commons.logging/1.1.1 * com.springsource.org.apache.commons.logging-1.1.1.jar * 還需要引入log4j的jar包 spring-framework-3.0.2.RELEASE-dependencies\org.apache.log4j\com.springsource.org.apache.log4j\1.2.15 * com.springsource.org.apache.log4j-1.2.15.jar 3. 步驟三:創建對應的包結構,編寫Java的類,要註意:以後使用Spring框架做開發,都需要來編寫接口與實現類!! * com.itcast.demo1 * UserService -- 接口 * UserServiceImpl -- 具體的實現類 4. 步驟四:想把UserServiceImpl實現類的創建交給Spring框架來管理,需要創建Spring框架的配置文件,完成配置 * 1. 在src目錄下創建applicationContext.xml的配置文件,名稱是可以任意的,但是一般都會使用默認名稱!! * 2. 引入spring的約束,需要先找到具體的約束頭信息!! * spring-framework-3.2.0.RELEASE\docs\spring-framework-reference\html\xsd-config.html * 具體的約束如下: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans> * 3. 完成UserService的配置 <!-- Spring的快速入門 --> <bean id="userService" class="com.itcast.demo1.UserServiceImpl"/> 5. 步驟五:編寫測試程序,采用Spring框架的工廠方式來獲取到UserService接口的具體實現類!! * 具體的代碼如下: public void demo2(){ // 使用Spring的工廠: ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); // 通過工廠獲得類: UserService userService = (UserService) applicationContext.getBean("userService"); userService.sayHello();
applicationContext.xml:
<?xml version="1.0" encoding="UTF-8"?> <!-- 引入schema的約束 --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 需要配置具體的Bean --> <bean id="userService" class="demo1.UserServiceImpl"></bean> <bean id="userService2" class="demo1.UserServiceImpl2"></bean> </beans>
UserService:
package demo1; public interface UserService { public void save(); }
UserServiceImpl:
package demo1; public class UserServiceImpl implements UserService{ public void save() { System.out.println("UserServiceImpl執行了"); } }
SpringDemo1:(測試)
package demo1; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class SpringDemo1 { /** * 傳統的方式 */ @Test public void run1(){ //傳統方式 UserService us=new UserServiceImpl(); us.save(); } /** * 使用spring的IOC的方式 */ @Test public void run2(){ //獲取spring的工廠對象 ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml"); //從工廠中獲取具體的Bean實例對象,參數為配置文件中的id值 UserService us = (UserService) ac.getBean("userService"); us.save(); } }
1.Spring框架入門