Spring是一个开源框架,是为了解决企业应用复杂性而创建的。
是一个轻量级的控制反转(Ioc)和面向切面(AOP)的容器框架
从大小和开销两方面而言Spring轻量的
通过控制反转(Ioc)的技术达到耦合的目的
提供面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发
包含并管理应用对象的配置和生命周期,是一种容器
为什么要用Sprin框架
Spring开发应用简单
Spring开发应用方便
Spring开发应用快捷
Spring作用
1.容
2.提供了多种技术支持
包含有JMS,MQ支持,UnitTest
AOP的(事务管理,日志等)
提供了众多方便应用的辅助类(JDBC Template)
对主流应用框架(hIBernate)提供了良好的支持
适用范围
1.构造企业应用(Spring MVC+Spring+Hibernate/ibatis)
2.单独使用Beam容器(Beam管理)
3.单独使用AOP进行切面处理
框架的特点
1.半成品
2.封装了特定的处理流程和控制逻辑
成熟的,不断升级改进
框架与类库的区别
框架一般是封装了逻辑,高类聚,类库则是松散的工具组合
框架专注与某一领域,类库则是更通用
接口
1.用于沟通中介物的抽象化
2.实体把自己提供给外界的一种抽象化的说明。用于由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的方式
3.对应Java即声明,声明了那些方法是对外公开提供的
JAVA中接口可以拥有方法体
面向接口编程
结构设计中分清层次及调用关系,每层只向外上层提供组功能接口,每层间仅依赖接口而非实现类
接口实现的变动不影响各层间的调用,这点在公告服务中尤为重要
面向接口编程中的接口是用于隐藏具体实现和实现多态性的组件
IOC控制反转,控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是由外部容器扶着创建和维护
DI(依赖注入)是其一种实现方式
目的:创建对象并组装对象之间的关系