本文經過一個簡單的入門程序向讀者演示Spring框架的使用過程,具體以下:java
使用IDEA建立一個名爲newspringdemo的項目,並將Spring的4個基礎模塊和第三方依賴模塊commons-logging-1.2導入到Maven項目中,以下圖所示:spring
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<!-- 第三方依賴commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
<!--Spring核心依賴模塊 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
</dependencies>
建立如上圖所示的包、類、xml等express
package dao;
public interface TestDao {
public void sayHello();
}
package dao;
import dao.TestDao;
public class TestDaoImpl implements TestDao {
@Override
public void sayHello() {
System.out.println("Hello,Spring!!!");
}
}
代碼以下:app
<?xml version="1.0" encoding="UTF-8"?>
<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">
<!--將指定類TestDaoImpl配置給Spring,讓Spring建立其實例-->
<bean id="test" class="dao.TestDaoImpl"/>
</beans>
注:配置文件的名稱能夠自定義,但習慣上命名爲applicationContext.xml,有關Bean的建立我在後面會詳細講解,這裏讀者只需瞭解便可。框架
package test;
import dao.TestDao;
import dao.TestDaoImpl;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test {
public static void main(String[] args) {
//初始化Spring容器ApplicationContext,加載配置文件
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
//經過容器獲取test實例
TestDao testDao =(TestDao)applicationContext.getBean("test");
testDao.sayHello();
}
}
以上內容就是一個簡單的入門Spring程序,能夠看出在main方法中並無使用new建立TestDaoImpl類的對象,而是經過Spring容器來獲取實現類對象,這就是Spring IoC的工做機制,在後面我會詳細講Spring IoC的工做機制。maven