Spring 学习笔记

Spring概况:

java 开源框架,学习网站:http://spring.io 相关文档:http://projects.spring.io/spring-framework/

        一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架:

  1. 从大小与开销两个方面而言 Spring 都是轻量级的
  2. 通过控制反转(IoC)的技术达到松耦合
  3. 提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发
  4. 包含并管理应用对象的配置和生命周期(容器)
  5. 将简单的组建配置、组合成为复杂的应用(框架)

Spring 带了复杂的 JavaEE 开发的春天

作用:

容器

多种技术支持

jms

MQ 支持

Unittest 等

AOP

提供辅助类(JDBC Templalate等)

对主流应用框架(Hibernate 等)提供支持

适用范围:

构建企业应用(SpringMVC+Spring+Hibernate/ibatis)

单独适用 bean 容器(bean 管理)

单独适用 AOP 进行切面处理

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

互联网应用

框架:

与类库的区别

框架一般是封装了逻辑、高内聚的,类库则是松耦合的工具组合

框架专注于某一领域,类库则是更通用的

#IOC

面向接口编程

  • 依赖接口,而非实现类
  • 隐藏具体实现,实现多态性的组建

IOC:控制反转 控制权的转移,应用本身不负责依赖对象的创建和维护,而是由外部容器负责创建和维护

DI(依赖注入 Dependency Injection),一种控制反转的的实现方式

目的:创建对象并且组装对象之间的关系

Spring 的 Bean 配置,xml 方式(另一种方式是 注解)

Bean 容器初始化:

基础包

  • org.springframwork.beans : BeanFactory
  • org.springframwork.context : ApplicationContext

Spring 注入

启动 Spring 容器加载 bean 配置时,完成对变量的赋值行为

两只方式:

 设值注入  <property name ="injectionClass" ref="injectionBeanID">

 构造注入 <constructor-arg name="injectionClass" ref="injectionBeanID">


#Bean

常用配置项:

Id, Class, Scope(作用域), Constructor arguments( 构造参数), Properties, Autowiring mode(自动装配), lazy-initialization  mode(懒加载), Initialization/destruction method,

 Bean 的作用域:

singleton :单例,每个容器中只存在一份

prototype:每次请求创建新的实例,destroy 方式不生效

request:每次 http 请求创建一个实例且仅在当前 request 内有效

session:同上,每次 http 请求创建,当前 session 内有效

global session:基于 portlet 的 web 中有效(protlet 定义了 global session ),如果是在 web 中同 session


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值