Spring入門&IOC
阿新 • • 發佈:2018-12-09
1、Spring入門
1.1 下載spring的開發包
1.2 解壓縮spring的壓縮包
- docs :Spring的開發規範和API
- libs :Spring的開發的jar和原始碼
- schema :Spring的配置檔案的約束
2、IOC
2.1 什麼是IOC
- IOC: Inversion of Control(控制反轉)。
- 控制反轉:將物件的建立權反轉給(交給)Spring。
2.2 傳統方式
2.2.1 傳統實現
介面
public interface UserDao{
public void save()
}
實現類
public class UserDaoImpl implements UserDao{
public void save(){
System.out.println("執行了儲存操作");
}
}
測試類
public class SpringDemo1{
public void Demo1(){
UserService userDao = new UserDaoImpl();
userservice.save();
}
}
2.2.2 出現的問題
如果底層的實現切換了,需要修改原始碼,能不能不修改程式原始碼對程式進行擴充套件?
2.3 Spring方式實現
2.3.1 將實現類交由spring進行管理
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
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" >
<!-- Spring的入門的配置==================== -->
<bean name="userDAO" class="com.xu.spring.demo1.UserDAOImpl" >
</beans>
2.3.2 編寫測試類
public void demo2(){
//建立spring的工廠
ApplicationContext applicationContext = new ClassPathXmlApplication("applicationContext.xml");
UserDao userDao = (UserDao)applicationContext.getBean("userDao");
userDao.save();
}