spring IOC中三种依赖注入方式

 更新时间:2021年08月17日 16:22:32   作者:Nirvana8921  
这篇文章主要介绍了spring IOC中三种依赖注入方式,Spring使用注入方式,为什么使用注入方式,这系列问题实际归结起来就是一句话,Spring的注入和IoC(本人关于IoC的阐述)反转控制是一回事

一、Spring IOC(依赖注入的三种方式):

1、Setter方法注入。

2、构造方法注入。

使用构造方法,注入bean值。
关键代码:
	public UserServiceImpl(UserDao dao) {
		this.dao=dao;
	}
	
    <bean id="service" class="service.impl.UserServiceImpl">
       <constructor-arg><ref bean="dao"/></constructor-arg>
   </bean>

3、P命名空间注入。

二、Spring IOC(依赖注入的五种不同数据类型):

1、注入直接量(基本数据类型、字符串)

2、引用其他Bean组件。(面向接口编程)

    ref属性:

<bean id="dao" class="dao.impl.UserDaoImpl"></bean>
	<bean id="service" class="service.impl.UserServiceImpl">
	 <property name="dao" ref="dao"></property>
	</bean>

   <ref>子元素:

<bean id="dao" class="dao.impl.UserDaoImpl"></bean>
	<bean id="service" class="service.impl.UserServiceImpl">
	  <property name="dao">
	      <ref bean="dao"/>
	  </property>
	</bean>

  p命名空间:

  xmlns:p="http://www.springframework.org/schema/p"
	<bean id="dao" class="dao.impl.UserDaoImpl"></bean>	
	<bean id="service" class="service.impl.UserServiceImpl" p:dao-ref="dao">
	</bean>

3、使用内部Bean。

<bean id="service" class="service.impl.UserServiceImpl">
	          <property name="dao">
	                 <bean class="dao.impl.UserDaoImpl"/>
	          </property>
	     </bean>

4、注入集合类型的属性。

5、注入null和空字符串。

到此这篇关于spring IOC中三种依赖注入方式的文章就介绍到这了,更多相关spring IOC依赖注入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java利用jenkins做项目的自动化部署

    Java利用jenkins做项目的自动化部署

    这篇文章主要介绍了Java利用jenkins做项目的自动化部署,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • Java8中Optional类的使用说明

    Java8中Optional类的使用说明

    Optional类主要解决的问题是臭名昭著的空指针异常(NullPointerException),每个Java程序员都非常了解的异常,这篇文章主要给大家介绍了关于Java8中Optional类使用的相关资料,需要的朋友可以参考下
    2021-11-11
  • Java中MyBatis的动态语句详解

    Java中MyBatis的动态语句详解

    这篇文章主要介绍了Java中MyBatis的动态语句详解,动态 SQL 是 MyBatis 的强大特性之一,通过不同参数生成不同的 SQL,可以动态地对数据持久层进行操作,而不需要每个数据访问操作都要进行手动地拼接 SQL 语句,需要的朋友可以参考下
    2023-08-08
  • Spring Boot 详细分析Conditional自动化配置注解

    Spring Boot 详细分析Conditional自动化配置注解

    首先我们先了解一下@Conditional注解,@Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,需要注入的Bean满足给定条件才可以注入到Spring IOC容器中
    2022-07-07
  • Java中的动态和静态编译实例详解

    Java中的动态和静态编译实例详解

    这篇文章主要介绍了Java中的动态和静态编译实例详解的相关资料,需要的朋友可以参考下
    2017-04-04
  • Java中文乱码解决方案全解析,让你的程序“说人话”!

    Java中文乱码解决方案全解析,让你的程序“说人话”!

    探索Java中文乱码解决方案全解析,让你的程序终于能“说人话”!厌倦了看着一串串的问号或者奇怪符号吗?跟着我们的指南,一步步轻松解锁中文乱码的秘密,让你的代码清晰表达每一个字,需要的朋友可以参考下
    2024-02-02
  • springboot自动配置没有生效的问题定位(条件断点)

    springboot自动配置没有生效的问题定位(条件断点)

    这篇文章主要介绍了springboot自动配置未生效问题定位,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,下面我们来学习一下吧
    2019-06-06
  • 基于MockMvc进行springboot调试(SpringbootTest)

    基于MockMvc进行springboot调试(SpringbootTest)

    这篇文章主要介绍了基于MockMvc进行springboot调试(SpringbootTest),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • JAVA语言编程格式高级规范

    JAVA语言编程格式高级规范

    这篇文章主要介绍了JAVA语言编程格式高级规范,需要的朋友可以参考下
    2015-05-05
  • java实现动态代理示例分享

    java实现动态代理示例分享

    动态代理作为代理模式的一种扩展形式,广泛应用于框架(尤其是基于AOP的框架)的设计与开发,本文将通过实例来讲解Java动态代理的实现过程。
    2014-03-03

最新评论