Spring是基于IOC和AOP来构架多层JavaEE系统的框架,主要目的是简化企业开发。
Spring是以一种非侵入式的方式来管理你的代码,提倡'最少侵入'。
项目中引入spring可以降低组件之间的耦合度,实现软件各层之间的解耦。、
Controller-Service-Dao
Spring提供的服务:
IOC:Inversion Of Control 控制反转
控制反转就是应用本身不负责依赖对象的创建和维护,依赖对象的创建和维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转,目的是为了获得更好的扩展性和良好的维护性。
DI:Dependency Injection 依赖注入
依赖注入就是在运行期,由外部容器动态地将依赖对象注入到另一个对象中。
ex:那Spring对容器进行创建,那创建完对象之后如果想获得这个对象,该怎么获得这个对象呢?
1.首先你需要创建个对象,然后如果你想要测试Spring如何管理你的容器,那么你需要在Spring.xml中写如下代码
假如你创建了一个叫WaWa的对象,public class Wawa{ ...},
//spring.xml
//IOC创建实例
//测试类测试
ApplicationContext ac = new ClassPathXmlApplicationContext("spring.xml");//创建一个上下文对象
Wawa wa = (Wawa)ac.getBean("wawa");//""双引号里写spring.xml的bean里的id名
System.out.println(wa);//假如有travel方法,可以直接调用wa.travel()方法实现IOC
System.out.println(wa.getName);
测试得出可以成功创建实例并得到Wawa的属性和方法。