Spring 总结(一)
2015-08-04 15:58
447 查看
Spring简单总结,既然有同事问起,就简单总结了下一些概念和优缺点,适合初学者从整体上理解下Spring。
Spring 是什么?
Spring 首先是一个开源的轻量级的开发应用框架,主要目的是为什么简化企业级应用程序的开发。
Spring 即是 容器 , 又是一个 框架。
容器: 因为它包含并管理 应用对象的生命周期和配置,如 创建,销毁, 回调等。
框架:因为提供了一些基础功能 (事物管理,持久集成等),是开发人员更加专注的开发应用逻辑。
Spring 的优点?
1. Spring 是一个轻量级开源免费的框架。
2.Spring IOC容器,将对象之间的依赖关系交给Spring管理(把依赖关系从类的内部转移到类的外部),这样降低了组件之间的 耦合度(类与类之间的耦合度)。
3. AOP很好的支持,面向方面的编程是程序员能更加专注的处理业务逻辑。
4. Spring 是非侵入式框架,代码的污染低。
5. 对主流的框架的集成度很好,如 hibernate , struts , JPA 等
6. Spring 框架的 灵活度很高,并不强制性开发者使用依赖Spring模块、开发者可以自由选取Spring 的模块来使用。
Spring 的核心?
1.I O C (控制反转)/ D I(依赖注入)【实现了松耦合编程】
控制反转和依赖注入的意义基本相同, 在传统的开发中在一个实例中要获取另一个实例的方法只能通过New关键在来获取,这样类之间的依赖关系就太大,耦合性增大,灵活性减低。而Spring 控制反转(依赖注入)就很好的解决这个问题,在Spring中被调用者不再由调用者来创建,而是由Spring
容器来完成, 在容器实例化对象时更具配置文件主动的将被调用者实例注入到给调用者。列如: 一个类需要用到 某个接口的方法,我需要将类A 和接口B 的实例关联起来, 最简单的方法就就只在类A中创建一个接口B 的实现类C ,但是这种方法两者的依赖关系太大, 而IOC 的方法只是,在类A 中定义好用于关联接口B实现的方法, 将类A ,接口B, 接口B的实现C 放入到IOC 容器中,由IOC
容器通过配置文件将类A 和接口B的实现C 关联起来。
依赖注入三种实现方法:
1.接口注入
2.setter注入
3. Constructor 注入(构造函数注入)
2.aop(面向切面的编程)【实现了高类聚开发 】
面向切面的编程, 是将业务逻辑从应用服务中(事物管理)分离出来,是程序员更加关注的处理业务逻辑, 使对象只关注业务逻辑,不用负责系统服务(日志,事物等)这样实现高类聚开发,
Spring Bean 中有多少种作用域?
singleton,prototype,request,session,global session,application ,自定义
Spring 是什么?
Spring 首先是一个开源的轻量级的开发应用框架,主要目的是为什么简化企业级应用程序的开发。
Spring 即是 容器 , 又是一个 框架。
容器: 因为它包含并管理 应用对象的生命周期和配置,如 创建,销毁, 回调等。
框架:因为提供了一些基础功能 (事物管理,持久集成等),是开发人员更加专注的开发应用逻辑。
Spring 的优点?
1. Spring 是一个轻量级开源免费的框架。
2.Spring IOC容器,将对象之间的依赖关系交给Spring管理(把依赖关系从类的内部转移到类的外部),这样降低了组件之间的 耦合度(类与类之间的耦合度)。
3. AOP很好的支持,面向方面的编程是程序员能更加专注的处理业务逻辑。
4. Spring 是非侵入式框架,代码的污染低。
5. 对主流的框架的集成度很好,如 hibernate , struts , JPA 等
6. Spring 框架的 灵活度很高,并不强制性开发者使用依赖Spring模块、开发者可以自由选取Spring 的模块来使用。
Spring 的核心?
1.I O C (控制反转)/ D I(依赖注入)【实现了松耦合编程】
控制反转和依赖注入的意义基本相同, 在传统的开发中在一个实例中要获取另一个实例的方法只能通过New关键在来获取,这样类之间的依赖关系就太大,耦合性增大,灵活性减低。而Spring 控制反转(依赖注入)就很好的解决这个问题,在Spring中被调用者不再由调用者来创建,而是由Spring
容器来完成, 在容器实例化对象时更具配置文件主动的将被调用者实例注入到给调用者。列如: 一个类需要用到 某个接口的方法,我需要将类A 和接口B 的实例关联起来, 最简单的方法就就只在类A中创建一个接口B 的实现类C ,但是这种方法两者的依赖关系太大, 而IOC 的方法只是,在类A 中定义好用于关联接口B实现的方法, 将类A ,接口B, 接口B的实现C 放入到IOC 容器中,由IOC
容器通过配置文件将类A 和接口B的实现C 关联起来。
依赖注入三种实现方法:
1.接口注入
2.setter注入
3. Constructor 注入(构造函数注入)
2.aop(面向切面的编程)【实现了高类聚开发 】
面向切面的编程, 是将业务逻辑从应用服务中(事物管理)分离出来,是程序员更加关注的处理业务逻辑, 使对象只关注业务逻辑,不用负责系统服务(日志,事物等)这样实现高类聚开发,
Spring Bean 中有多少种作用域?
singleton,prototype,request,session,global session,application ,自定义
相关文章推荐
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- spring+html5实现安全传输随机数字密码键盘
- Spring中属性注入详解
- struts2 spring整合fieldError问题
- spring的jdbctemplate的crud的基类dao
- 读取spring配置文件的方法(spring读取资源文件)
- java实现简单美女拼图游戏
- java基本教程之线程休眠 java多线程教程
- JSP开发中在spring mvc项目中实现登录账号单浏览器登录
- 基于Spring框架的Shiro配置方法
- Spring MVC中上传文件实例
- 实例讲解Java的Spring框架中的AOP实现
- 解析Java中如何获取Spring中配置的bean
- Spring的注解配置与XML配置之间的比较
- java Spring整合Freemarker的详细步骤
- Java 二维码,QR码,J4L-QRCode 的资料整理
- java当中的定时器的4种使用方式
- java中 spring 定时任务 实现代码