一、依赖注入的三种注入方式

  Spring框架为我们提供了三种注入方式:set注入、构造方法注入和接口注入。

  1、set注入

    规律:无论给什么赋值,配置文件中<property>标签的name属性值一定和对象中的名称一致。

    1)普通字符类型注入

 <bean id="" class="">
<property name="" value=""/>
</bean>

    

    2)对象注入

 <bean id="" class="">
<property name="" ref=""/>
</bean>

    3)list集合注入

 <bean id="" class="">
<property name="">
<list>
<value></value>
<value></value>
<value></value>
</list>
</property>   
</bean>

    4)属性文件中的字段的注入

 <bean id="" class="">
<property name="props">
<props key=""></props>
<props key=""></props>
<props key=""></props>
</property>
</bean> 注意:props是类中的资源文件类的对象

     

  2、构造方法注入

    1)一个参数

    

 <bean id="" class="">
<constructor-args value=""/>
</bean>

    2)两个参数

      当参数为非字符串类型时,在配置文件中需要制定类型,如果不指定类型一律按照字符串类型赋值。

      当参数类型不一致时,框架是按照字符串的类型进行查找的,因此需要在配置文件中制定是参数的位置。

    

 <constructor-arg value="admin" index="0"/>
<constructor-arg value="23" type="int" index="1"/>

Spring框架学习(二)的更多相关文章

  1. spring框架学习(二)——注解方式IOC/DI

    什么是注解 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分 ...

  2. Spring框架学习总结(上)

    目录 1.Spring的概述 2.Spring的入门(IOC) 3.Spring的工厂类 4.Spring的配置 5.Spring的属性注入 6.Spring的分模块开发的配置 @ 1.Spring的 ...

  3. Spring框架学习之IOC(二)

    Spring框架学习之IOC(二) 接着上一篇的内容,下面开始IOC基于注解装配相关的内容 在 classpath 中扫描组件 <context:component-scan> 特定组件包 ...

  4. Spring框架学习一

    Spring框架学习,转自http://blog.csdn.net/lishuangzhe7047/article/details/20740209 Spring框架学习(一) 1.什么是Spring ...

  5. Spring框架学习1

    AnonymouL 兴之所至,心之所安;尽其在我,顺其自然 新随笔 管理   Spring框架学习(一)   阅读目录 一. spring概述 核心容器: Spring 上下文: Spring AOP ...

  6. Spring框架学习笔记(1)

    Spring 框架学习笔记(1) 一.简介 Rod Johnson(spring之父) Spring是分层的Java SE/EE应用 full-stack(服务端的全栈)轻量级(跟EJB比)开源框架, ...

  7. Struts2框架学习(二) Action

    Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...

  8. spring框架学习(三)junit单元测试

    spring框架学习(三)junit单元测试 单元测试不是头一次听说了,但只是听说从来没有用过.一个模块怎么测试呢,是不是得专门为一单元写一个测试程序,然后将测试单元代码拿过来测试? 我是这么想的.学 ...

  9. spring 框架学习网站

    spring 框架学习网站 NO1 http://www.mkyong.com NO2 https://spring.io/docs/reference

随机推荐

  1. R----DT包介绍学习

    DT包:查看矩阵或数据框的内容 12 library(DT)datatable(iris, options = list(pageLength = 5)) DT包提供大量UI定制功能,即修改展示的HT ...

  2. 【leetcode❤python】 414. Third Maximum Number

    #-*- coding: UTF-8 -*- #l1 = ['1','3','2','3','2','1','1']#l2 = sorted(sorted(set(l1),key=l1.index,r ...

  3. 试用VSCode

    VSCode是代码编辑器,不是IDE. 优点: 1.内置ES6代码高亮和提示,语法验证 2.除了支持到变量定义处Go to definition,还支持弹框显示变量定义出peek definition ...

  4. 【OOAD】OOAD概述

    什么是面向对象? OOP:面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构.OOP 的一条基本原则是计算机程序是由单个能够起到子程序 ...

  5. Hibernate <查询缓存>

    查询缓存: 定义:查询缓存它是基于二级缓存的,可以保存普通属性查询的结果,查询对象实体时,他会保存id作为键,查询结果作为值,下个对象访问时,可以直接查到 查询缓存查询实体对象时,显著的特点是,会执行 ...

  6. Openfire开发配置,Openfire源代码配置,OpenFire二次开发配置

    原文:http://www.cnblogs.com/lixiaolun/archive/2013/12/07/3462780.html 1.下载源代码:http://www.igniterealtim ...

  7. java jar包解析:打包文件,引入文件

    java jar包解析:打包文件,引入文件 cmd下: jar命令:package包打包 javac命令:普通类文件打包 Hello.java: package org.lxh.demo; publi ...

  8. mysqlbinlog flashback 5.6完全使用手册与原理

    版本更新 2016/3/7 首次发布      2016/3/9  修复update无效问题      2016/4/8  修复带有秒级别以下的日期数据bug 下载地址 http://pan.baid ...

  9. ubuntu如何卸载apt-get install安装的软件

    1.sudo apt-get remove xxxxx  sudo apt-get autoremove2.对于用命令sudo aptitude install xxx安装的软件可以用sudo apt ...

  10. Canvas与Image互相转换

    转换 Image为 Canvas要把图片转换为Canvas(画板,画布),可以使用canvas元素 context 的drawImage方法: // 把image 转换为 canvas对象 funct ...