1.什么是Spring
javaEE/SE的开发的一站式轻量级开源框架(hibernate是持久层的ORM框架)
一站式:有JavaEE开发的每一层的解决方案
web层:SpringMVC
Service:SpringBean 的管理,声明事务(通过配饰直接管理)
Dao层:JDBC,ORM模块
2.Spring 的好处
1.轻量级:文件小,加载快,性能好
2.IOC:解决耦合问题
3.AOP:面向切面编程
4.利于集成各种框架
5.声明式事务支持
3.IOC:控制反转
以前我们要使用一个对象,就必须去new一个对象,这样耦合度十分高的(联系过深,一处更改,就要去修改多处源码)
IOC:将对象的创建反转交给Spring
Spring IOC 的底层原理:
XML ,工厂,反射
xml:配置一个bean
<bean id="xxxxx" class="类的完全限定名"></bean>
工厂:
class BeanFactory(){
public static Object getBean(String id){//此处的id就是配置的id名 xxxxx
//1.读取xml:通过id获取class
//2.反射获取实例对象
Class class =Class.ForName()
return class.newInstances()
}
}
4.DI:依赖注入
前提:必须有ioc 的环境
Spring管理这个类的时候将这个类的属性注入进来
{IOC与DI的一个区别:IOC:控制反转,是将对象的创建交给Spring去管理
DI:依赖注入:是将这个类的属性注入进来
}
<bean id="xxxxx" class="类的完全限定名">
<property name="属性名" value=>
</bean>