对spring中IOC的理解和使用spring的好处

2014-11-24 01:42:31 · 作者: · 浏览: 0

依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念。具体含义是:当某个角色(可能是一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在 传统的程序设计过程中,通常由调用者来创建被调用者的实例。但在Spring里,创建被调用者的工作不再由调用者来完成,因此称为控制反转;创建被调用者实例的工作通常由Spring容器来完成,然后注入调用者,因此也称为依赖注入。

使用Spring的好处

1. 降低组件间的耦合性;

原来

class UserService{

UserDao udao=new UserDaoImpl();

}

使用Spring,只需要注入属性

class UserService{

private UserDao udao;

public void setUdao(UserDao udao){

this.udao=udao;

}

public UserDao getUdao(){

return udao;

}

}

2. Spring提供多种服务支持,如事务、jms服务,但使用事务管理时,开发人员不需要手动控制事务;

3. 提供单态模式

4. 提供AOP机制,利用它容易实现权限拦截、运行前监控等

5. 对主流框架提供支持