spring IOC注入
IOC
的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器负责将这些联系在一起。
IoC
设计模式重点关注组件的依赖性、配置以及生命周期。
Ioc
设计模式实现了
“
面向接口编程,而不是实现
”
的原则。
IOC的三种依赖注入的方式:
第一种:setter方法注射 spring中常用的方式
public class GreetingServiceImpl implements GreetingService{
private String name;
private String say;
public GreetingServiceImpl(String name,String say) {
this.name = name;
this.say=say;
}
@Override
public void say() {
System.out.println("I want to say"+name+"。。。。。。"+say);
}
public void setSay(String say) {
this.say = say;
}
}
<beans>
<bean id="greetingServiceImpl" class="cn.csdn.service.GreetingServiceImpl">
<property name="say">
<value>你还好吗?</value>
</property>
</bean>
</beans>
第二种:构造器注射
1、 根据构造器的索引注入
public class GreetingServiceImpl implements GreetingService{
private String name;
private String say;
public GreetingServiceImpl(String name,String say) {
this.name = name;
this.say=say;
}
@Override
public void say() {
System.out.println("I want to say"+name+"。。。。。。"+say);
}
}
<beans>
<bean id="greetingServiceImpl" class="cn.csdn.service.GreetingServiceImpl">
<!-- 构造器的索引注入-->
<constructor-arg index="0">
<value>晓丽</value>
</constructor-arg>
<constructor-arg index="1">
<value>想你了</value>
</constructor-arg>
</bean>
</beans>
2、 根据构造器的类型
public class GreetingServiceImpl implements GreetingService{
private String name;
private String say;
public GreetingServiceImpl(String name,String say) {
this.name = name;
this.say=say;
}
@Override
public void say() {
System.out.println("I want to say"+name+"。。。。。。"+say);
}
}
<beans>
<bean id="greetingServiceImpl" class="cn.csdn.service.GreetingServiceImpl">
<!-- 构造器的类型注入 -->
<constructor-arg type="java.lang.String">
<value>晓丽</value>
</constructor-arg>
<constructor-arg type="java.lang.String">
<value>我还好</value>
</constructor-arg></bean>
</beans>
3、通过接口注入(没有实例)
分享到:
相关推荐
体验Spring中的IoC的实现原理.doc
体验Spring的IoC容器的优点(Eclipse中).doc
spring ioc 原理理解以及代码快速体验
第二部分在第1章介绍的IoC和AOP基础之上,展示了如何将这两个概念应用到应用系统的中间层。第三部分走出中间层迈向显示层,在很多J2EE系统中显示层被称为Web层。附录A介绍如何开始自己的Spring应用系统,如何下载...
体验控制反转的理念及Spring介绍技术文档,相信对大家有所帮助;
第二部分在第1章介绍的IoC和AOP基础之上,展示了如何将这两个概念应用到应用系统的中间层。第三部分走出中间层迈向显示层,在很多J2EE系统中显示层被称为Web层。附录A介绍如何开始自己的Spring应用系统,如何下载...
SSM 框架是用于构建该网站的核心框架,它包含了 Spring MVC 作为 Web 框架,Spring 作为 IoC 容器和 MyBatis 作为持久层框架。 在系统设计方面,该网站采用了 B/S 架构,并采用了 MySQL 作为数据库。用户和管理员都...
SSH框架知识-原理。其中包括strusts原理,hebernate原理,Spring的原理,以及为什么要用他们,AOP和IOC。getAttribute 和 getParameter 的区别
Spring:一个开源的轻量级Java SE/Java EE全功能栈框架,提供了IoC容器和AOP功能,可以管理对象的生命周期和声明式事务。 Spring MVC:作为Spring的一个模块,提供了构建Web应用程序的MVC(模型-视图-控制器)设计...
SSM框架是当前Java Web开发中非常流行的一套轻量级解决方案,它整合了Spring的IoC和AOP、SpringMVC的Web层和MyBatis的ORM,为开发者提供了高效且灵活的开发体验。 游戏美术外包管理信息系统的开发旨在帮助游戏开发...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...
Spring提供了控制反转(IoC)和面向切面(AOP)等特性,简化了开发过程;Spring MVC用于构建Web应用程序,处理HTTP请求和响应;而MyBatis则是一个优秀的持久层框架,简化了数据库操作。 这些项目的开发旨在为用户...