三种属性注入方式

构造函数注入

1、在Bean实体中写入构造函数(带参构造)

2、

<bean id=”该bean的名称” class=”注入的bean的全路径”>

         <constructor name=”属性名” value=”属性值”/>

         < constructor name=”属性名” ref=”其他Bean对象id”/>

</baen>
属性setter方法注入(使用最多)

1、在Bean实体中写入setter方法

2、

<bean id=”该bean的名称” class=”注入的bean的全路径”>

        <property name=”属性名” value=”属性值”/>

        <property name=”属性名” ref=”其他Bean对象id”/>

</baen>
接口注入(不推荐,spring不支持)

Spring属性注入简化写法

P名称空间注入

简化XML文件配置,spring从2.5开始引入新的p名称空间

1、  引入p名称空间:

xmlns:p=http://www.springframework.org/schema/p

2、  配置引入文件

引入普通属性:

<bean id=”该bean的名称” class=”注入的bean的全路径” p:属性名=”属性值”/baen>

引入类对象属性:

<bean id=”该bean的名称” class=”注入的bean的全路径” p:ref-属性名=”属性值”/baen>
SpEL注入

语法:

<bean id=”该bean的名称” value=”#{表达式}”/>

语言:

1、#{‘hello’}:使用字符串

2、#{beanId}:使用其他Bean对象

3、#{beanId.content.toUpperCase()}:使用其他Bean对象属性,并使用其方法

4、#{T(java.lang.Math).PI}:使用静态字段或方法

Spring expression language(spring表达式语言,对依赖注入进行简化)

复杂类型的属性注入

使用范围:整合其他框架

数组类型
<property name=”属性名” >

      <list>

          <value>数组的第一个值</value>

          <value>数组的第二个值</value>

           …

     </list>

</property>        
List集合
 <property name=”属性名” >

      <list>

            <value>list的第一个值</value>

            <value>list的第二个值</value>

            …

      </list>

</property>    
Set集合
<property name=”属性名” >

        <set>

            <value>set的第一个值</value>

            <value>set的第二个值</value>

            …

        </set>

</property>
Map集合
<property name=”属性名” >

       <map>

             <entry key=”map的key” value=”map的value”/ >

             <entry key=”map的key” value=”map的value” / >

              …

       </map>

</property>    
Properties集合
<property name=”属性名” >

       <props>

             <prop key=” prop的key” >value</prop>

             < prop key=” prop的key” >value</prop>

              …

      </ props>

</property>

spring-bean(xml方式DI)的更多相关文章

  1. 04_IOC容器装配Bean(xml方式)

    IOC容器装配Bean(xml方式) 1.Spring 提供配置Bean三种实例化方式 1)使用类构造器实例化(默认无参数) <bean id="bean1" class=& ...

  2. Spring基于XML方式的使用

    一.IoC配置 IoC的配置是通过Spring的xml文件的bean标签进行的. 1.bean标签介绍 bean标签一般是在xml文件进行配置的,xml文件一般样式如下: <?xml versi ...

  3. 【Spring】XML方式实现(无参构造 有参构造)和注解方式实现 IoC

    文章目录 Spring IoC的实现方式 XML方式实现 通过无参构造方法来创建 1.编写一个User实体类 2.编写我们的spring文件 3.测试类 UserTest.java 4.测试结果 通过 ...

  4. Spring bean注入方式

    版权声明:本文为博主原创文章,如需转载请标注转载地址. 博客地址:http://www.cnblogs.com/caoyc/p/5619525.html  Spring bean提供了3中注入方式:属 ...

  5. Spring通过XML方式实现定时任务

    package com.wisezone.service; import java.text.SimpleDateFormat; import java.util.Date; import org.s ...

  6. Spring基于XML方式加载Bean定义信息(又名:Spring IOC源码时序图)-图解

  7. spring bean实例化方式

    注意:xml配置中bean节点下scope属性默认值为singleton(单例),在需要多例的情况下需要配置成prototype spring提供三种实例化方式:默认构造.静态工厂.实例工厂 一.默认 ...

  8. Spring Bean装配方式

    Spring装配机制 在xml中进行显示配置 在Java中进行显示配置 隐式bean发现机制和自动装配 自动化装配bean 组件扫描(component scanning),Spring会自动发现应用 ...

  9. spring bean.xml

    http://blog.csdn.net/lanshengsheng2012/article/details/9011635

随机推荐

  1. .NET平台下使用C#连接各种数据库

    在.NET平台下,通常我们需要连接不同的数据库,这就需要我们配置连接字符串以及提供常用的class进行数据存取. 1.C#连接Access @"Provider=Microsoft.ACE. ...

  2. Map集合练习之对字符串中字母出现的次数求和

    不多说,直接上干货! 代码需求 如有这么一个字符串 String str = "fdg+avAdc bs5dDa9c-dfs"; MapTest.java package zhou ...

  3. java并发编程 volatile关键字 精准理解

    1.volatile的作用 一个线程共享变量(类的成员变量.类的静态成员变量等)被volatile修饰之后,就具有以下作用: 1)并发中的变量可见性(不同线程对该变量进行操作时的可见性),即一个线程修 ...

  4. poj 2486 树形DP n选m连续路径

    题目连接:http://acm.hust.edu.cn/vjudge/problem/18071 资料连接: http://blog.csdn.net/woshi250hua/article/deta ...

  5. Spring课程 Spring入门篇 3-3 Spring bean装配(上)之aware接口

    课程链接: 本节主要介绍了以下内容: 1 aware介绍 2 代码演练 3 课程总结 1 aware介绍 1.1 为什么要使用aware? 在java类中,可以方便的获取xml配置文件中的bean的各 ...

  6. nopcommerce 3.6网银在线支付插件(源码)

    网银在线支付插件,下载后通过后台插件管理安装.配置即可使用. 下载:网银在线支付插件3.1.3.6版.rar (106.3KB) 源代码放在\Plugins目录下,用vs打开重新生成. 源地址:htt ...

  7. spring笔记3-AOP

    一.概述 AOP:(Aspect Oriented Programming)即:面向切面编程.把我们程序重复的代码抽取出来,在需要执行的时候,使用动态代理的技术,在不修改源码的基础上,对我们的已有方法 ...

  8. Android setUserVisibleHint-- fragment真正的onResume和onPause方法

    这个情况仅适合与多个fragment之间切换时统计,而非activity和fragment同时交互,因当时项目为首页4个fargment时长统计,因此适合,经下面网友评论指出,特在这里写出此问题,因最 ...

  9. 【起航计划 013】2015 起航计划 Android APIDemo的魔鬼步伐 12 App->Activity->SetWallpaper 设置壁纸 WallpaperManager getDrawingCache使用

    SetWallpaper介绍如何在Android获取当前Wallpaper,对Wallpaper做些修改,然后用修改后的图像重新设置Wallpaper.(即设置>显示>壁纸>壁纸的功 ...

  10. Azure:陪伴你们,是我最长情的告白

    立即访问http://market.azure.cn