使用IDEA開發Spring入門程序
前言
本文通過一個簡單的入門程序向讀者演示Spring框架的使用過程,具體如下:
一、使用IDEA創建Maven應用項目並導入相應模塊
使用IDEA創建一個名為newspringdemo的項目,並將Spring的4個基礎模塊和第三方依賴模塊commons-logging-1.2導入到Maven項目中,如下圖所示:
<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>
2、項目案例
創建如上圖所示的包、類、xml等
dao
TestDao代碼如下:
package dao;
public interface TestDao {
public void sayHello();
}
TestDaoImpl代碼如下:
package dao;
import dao.TestDao;
public class TestDaoImpl implements TestDao {
@Override
public void sayHello() {
System.out.println("Hello,Spring!!!");
}
}
applicationContext.xml
代碼如下:
<?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的創建我在后面會詳細講解,這里讀者只需了解即可。
test
Test代碼如下:
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的工作機制。