1、Spring入门
0、简介
- 什么是Spring?
Spring是一个为了简化开发的框架,像是一个大杂烩,把所有的技术都整合到了一起!
- Spring是一个免费的开源的容器(框架)
- Spring是一个轻量级的、非入侵的框架
- 控制反转(IOC),面向切面编程(AOP)
- 支持事务的处理,对框架整合的支持!
Spring是一个轻量级的控制反转(IOC)和面向切面编程(AOP)的免费的框架!
1、组成
- 七大模块
![]
2、IOC快速入门
什么是IOC?上面说过,就是控制反转,英文缩写是:Inversion Of Control 控制反转
就是本来我们在service层使用组合写死的UserDao,现在我们设置一个公开的set方法,让用户去set UserDao的具体实现,其实也是一种多态的思想
public class UserServiceImpl implements UserService {
//我们有个组合的概念
private UserDao userDao;
//我们使用多态的思想就很强,也可以弄在构造方法中
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
public void getUser() {
userDao.getUser();
}
}
3、HelloSpring
看一下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
https://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 详单与new了一个dao.UserDaoMySQLImpl对象-->
<bean id="MySQL" class="dao.UserDaoMySQLImpl"></bean>
<!-- 相当于new了一个dao.UserDaoOracleImpl对象-->
<bean id="Oracle" class="dao.UserDaoOracleImpl"></bean>
<!-- 在注册一个SQLServer-->
<bean id="SQLServer" class="dao.UserDaoSQLServerImpl"/>
<bean id="UserImpl" class="service.UserServiceImpl">
<!-- 这里说一下ref 和 value的区别,ref是映射是当前页面-->
<property name="userDao" ref="SQLServer"/>
</bean>
</beans>