目录
1、spring概念
spring是一个AOC和IOC容器框架,使用spring开发可以将bean,dao,service交给spring管理,简化开发代码,降低代码耦合度,便于后期项目的维护。
2、spring特性
(1)非侵入性
基于spring开发的应用中的对象不依赖于spring的API,不会给项目本身增添依赖关系。
(2) 控制反转(IOC)
控制反转是将对象的创建权交给spring去创建,使用spring之前,我们创建对象都需要我们在自己代码中new创建,使用spring后,创建交给spring框架内,使用时只需要注入即可。
(3)依赖注入(DI)
依赖的对象不需要调用setXXX()方法去设置,而是通过配置赋值。
(4)面向切面编程(AOP)
在不修改原代码的功能基础上,进行扩展,如:
例:在项目中我们写的自定义异常类,是在原有异常类的基础上,扩展出来的,其他异常类均可正常使用。
(5)容器
spring是一个容器,它包含并管理对象的生命周期。
(6)组件化
spring实现使用简单注解配置组合成一个复杂应用,在spring中可以使用xml配置和java注解组合这些对象。
(7)一站式
在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库。
3、spring模块
(1)Core Container
①bean:提供BeanFactory,是一个工厂模式的复杂实现;
②core框架基本组成成分,包括AOP和DI;
③context:访问定义和配置的任何对象的媒介;
④spEL:提供了查询和操作一个对象的强大的Spring表达式语言。
(2)AOP和Aspects
提供面向切面编程
(3)DataAccess
提供对数据的访问
(4)Web
提供面向web应用的集成功能
(5)Test
提供对Juni的测试功能