spring框架基础与IoC基础
来源:互联网 发布:mac怎么修复磁盘权限 编辑:程序博客网 时间:2024/05/16 11:28
spring框架构建在core核心模块上,它是整个框架的基础。spring为我们提供了一个IoC容器实现,用于帮助我们以依赖注入的方式管理对象之间的依赖关系。
沿着spring生命之树往上左序遍历,我们将到AOP模,让我们可以以AOP的形式增强各POJO的能力,进而补足OOP/OOSD之缺憾。Spring的AOP框架符合AOP Alliance规范,采用Proxy模式构建,与IoC容器相结合,可以充分显示出Spring AOP的强大威力。
继续上行,Spring框架在Core核心模块和AOP模块的基础上,为我们提供了完备的数据访问和事务管理的抽象和集成服务。在数据访问支持方面,Spring对JDBC API的最佳实践极大地简化了该API的使用。除此之外,Spring框架为各种当前业界流行的ORM产品,比如Hibernate、iBATIS、Toplink、JPA等提供了形式统一的集成支持。Spring框架中的事务管理抽象层是Spring AOP的最佳实践,它直接构建在Spring AOP的基础之上,为我们提供了编程式事务管理和声明式事务管理的完备支持。这些服务极大地简化了日常应用开发过程中的数据访问和事务管理工作。
通常情况下,被注入对象会直接依赖于被依赖对象。但是,在IoC的场景中,二者之间通过IoC ServiceProvider来打交道,所有的被注入对象和依赖对象现在由IoC Service Provider统一管理。被注入对象需要什么,直接跟IoC Service Provider招呼一声,后者就会把相应的被依赖对象注入到被注入对象中,从而达到IoC Service Provider为被注入对象服务的目的。IoC Service Provider在这里就是通常的IoC容器所充当的角色。从被注入对象的角度看,与之前直接寻求依赖对象相比,依赖对象的取得方式发生了反转,控制也从被注入对象转到了IoC Service Provider那里①。
三种依赖注入的方式,即构造方法注入(constructor injection)、setter方法注入(setter injection)以及接口注入(interface injection)
构造方法注入就是被注入对象可以通过在其构造方法中声明依赖对象的参数列表,让外部知道它需要哪些依赖对象。
public NewsProvider(NewsListener newsListener,NewsPersister newsPersister)
{
this.newsListener=newsListener;
this.newsPersister=newsPersister;
}
IoC Service Provider会检查被注入对象的构造方法,取得依赖对象列表,进而为其注入对象。同一对象不能被构造2次,被注入对象的构造及生命周期由IoC Service Provider来管理。
setter方法注入:对象类用源代码生成getter与setter方法。对象只要为其依赖对象的属性添加setter方法,就可以通过setter方法将相应的依赖对象设置到被注入对象中。
package com.kplus.model;
import com.kplus.web.action.BaseAction;
public class Pingan extends BaseAction {
private String orderId;
private double amount;
private String objectName;
private String remark;
public String getOrderId() {
return orderId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
public double getAmount() {
return amount;
}
public void setAmount(double amount) {
this.amount = amount;
}
public String getObjectName() {
return objectName;
}
public void setObjectName(String objectName) {
this.objectName = objectName;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}
setter方法注入不像构造方法那样对象构造完成就能使用,但相对来说更宽松一些,可以在对象构造完成后再注入
接口注入:被注入对象如果想要IoC Service Provider为其注入依赖对象,就必须实现某个接口。
- spring框架基础与IoC基础
- Spring基础-1-IOC与DI
- Spring IOC 基础
- spring ioc 基础
- Spring Ioc基础总结
- Spring IOC基础
- spring基础---- IOC容器
- spring IOC 基础
- Spring IOC基础
- Spring IOC基础
- spring-IOC基础
- Spring基础之IoC
- Spring IOC基础(Spring2.0)
- spring基础及IOC注入
- Spring IoC 基础 (二)
- Spring基础(IOC&DI)
- Spring IOC基础 配置文件方式
- Spring IOC基础 注解方式
- VMCE6.0修改内存大小
- C 二维数组
- 希尔排序
- 有关jsp路径
- 安卓模仿新浪微博看看
- spring框架基础与IoC基础
- Java读取XML文件(1)
- IM系统架构设计之浅见
- Hibernate API操纵连接数据库
- 在Activity中响应ListView内部按钮的点击事件
- 美国总会更早复苏
- 常用Linux或者Android命令
- ListView之自定义适配器的使用
- 抢占农村电商市场,如何布局是关键