Spring 简介

来源:互联网 发布:贵金属投资分析软件 编辑:程序博客网 时间:2024/06/02 03:02

什么是框架:框架就是制订一套规范或规则,程序员在该规范或规则下工作,形象地说就是在搭好的舞台上表演;框架的特点:1、半成品;2、封装了特定的处理流程与控制逻辑;3、成熟的、不断升级改进的软件;框架与类库的区别:框架一般是封装了逻辑、高内聚的,类库则是松散的工具组合;框架专注于某一领域,类库则是更通用;为什么使用框架?软件系统日趋复杂;重用度高,开发效率与质量提高;是软件设计人员要专注于对领域的了解,是需求分析更加充分;一般框架配有完整的使用文档,易于上手,快速解决问题

spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架轻量:大小、开销轻量通过IoC达到松耦合提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发包含并管理应用对象的配置和生命周期,是一种容器将简单的组件配置、组合成为复杂的应用,是框架

IOC我的理解就是面向接口的编程。举个例子,你在main方法里要运用一个磁盘传输数据的方法:磁盘 a=new 磁盘();但是如果现在要求你使用U盘来实现传输数据的功能怎么办?U盘 u=new U盘();?这就导致对于底层的过度依赖,java思想是下层为上层服务,底层对程序拥有的控制权所以就必须使用接口的方式,使得磁盘和U盘同时实现设备这个接口里的方法。接口 i=new 磁盘()或者new U盘();因为java的对象是在运行期才会被创建的,而非编译器。但是这样仍然存在着问题,就是每次要改动对象类型的时候还是要到程序里去做修改,如果有了xml文件的话,可以直接修改xml文件。所以这就是IOC的大致思想。控制反转的意思就是将底层对程序拥有的控制权转移给了接口!!!实现了接口控制的方式!当然这只是他的核心思想,IOC里面还有其他的东西值得继续研究。切面编程,就是在你项目原有的功能基础上,通过AOP去添加新的功能,这些功能是建立在原有功能的基础上的,而且原有的功能并不知道你已经添加了新的功能。比如说,你去ATM取钱,取钱是一个功能,取完钱后向你的手机发送一条取钱信息,这就是新加的功能。
结构:

作用:

1.容器

2.提供了对多种技术的支持

JMS

MQ支持

UnitTest等……

3.AOP(事务管理、日志等)

4.提供了众多方便应用的辅助类(JDBC Template等)

5.对主流应用框架(Hibernate等)提供了良好的支持


适用范围:

1.构建企业应用(SpringMVC+Spring+Hibernate/iBatis)

2.单独使用Bean容器(Bean管理)

3.单独使用AOP进行切面处理

4.其他的Spring功能,如:对消息的支持等

5.在互联网中的应用




1 0