spring-bean(xml方式DI)
三种属性注入方式
构造函数注入
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)的更多相关文章
- 04_IOC容器装配Bean(xml方式)
IOC容器装配Bean(xml方式) 1.Spring 提供配置Bean三种实例化方式 1)使用类构造器实例化(默认无参数) <bean id="bean1" class=& ...
- Spring基于XML方式的使用
一.IoC配置 IoC的配置是通过Spring的xml文件的bean标签进行的. 1.bean标签介绍 bean标签一般是在xml文件进行配置的,xml文件一般样式如下: <?xml versi ...
- 【Spring】XML方式实现(无参构造 有参构造)和注解方式实现 IoC
文章目录 Spring IoC的实现方式 XML方式实现 通过无参构造方法来创建 1.编写一个User实体类 2.编写我们的spring文件 3.测试类 UserTest.java 4.测试结果 通过 ...
- Spring bean注入方式
版权声明:本文为博主原创文章,如需转载请标注转载地址. 博客地址:http://www.cnblogs.com/caoyc/p/5619525.html Spring bean提供了3中注入方式:属 ...
- Spring通过XML方式实现定时任务
package com.wisezone.service; import java.text.SimpleDateFormat; import java.util.Date; import org.s ...
- Spring基于XML方式加载Bean定义信息(又名:Spring IOC源码时序图)-图解
- spring bean实例化方式
注意:xml配置中bean节点下scope属性默认值为singleton(单例),在需要多例的情况下需要配置成prototype spring提供三种实例化方式:默认构造.静态工厂.实例工厂 一.默认 ...
- Spring Bean装配方式
Spring装配机制 在xml中进行显示配置 在Java中进行显示配置 隐式bean发现机制和自动装配 自动化装配bean 组件扫描(component scanning),Spring会自动发现应用 ...
- spring bean.xml
http://blog.csdn.net/lanshengsheng2012/article/details/9011635
随机推荐
- mysql时间戳
select unix_timestamp('2013-01-01 10:10:10'); , '%Y-%m-%d %H:%i:%S' ) date_format(date,'%Y-%m-%d') - ...
- git合并分支上的commit为一条commit到master
标签: git 缘由? 有一次被人问到怎么把一个分支的所有commit按一个commit合并到主分支上,当时一脸蒙B,平时开发都是直接merge,很少考虑到这种问题,于是特意搜索了相关资料. 场景 其 ...
- Android 使用xml实现边框阴影,背景渐变效果(附有RGB颜色查询对照表)
上图是显示效果,下面是代码实现: 个人理解就是使用layer-list实现两层view的叠加,其中top,left,bottom,left控制阴影 <?xml version="1.0 ...
- 文件上传PHP
<?php $targetIp = GetIP(); $fileUpload = 'fileUpload'; $frameCount = 'frameCount'; $fileName = $_ ...
- Struts2_结果类型_resulttype_1
看下面的例子: 一般使用4种:dispatcher(容器内跳转到JSP页面).redirect(重定向到jsp页面).chain(容器内跳转到另一个Action).redirectAction(重定向 ...
- linux脚本的source和reload
什么时候用reload?有些程序, 当你修改了配置文件后, 需要重启之后, 配置才能生效,但是 这个程序又不能 重启 , 如大公司的httpd服务 因此, 当你修改完了之后, 需要在不重启服务的情况下 ...
- 数据仓库是什么?OLTP和OLAP是什么?
数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented).集成的(Integrate).相对稳定的(Non-Volatile).反映历史变化(Time Varian ...
- centos 卸载 docker
yum list installed | grep docker //查看安装过的包 docker-engine.x86_64 17.03.0.ce-1.el7.cen ...
- Python基础学习之字符串(2)
字符串常用方法 1.s.capitalize() 描述:返回字符串s的副本,并将首字符变为大写. 示例: >>> s='yesterday when I was Young!' &g ...
- CentOS6.5手动升级gcc4.8.2
一.简易安装 操作环境 CentOS6.5 64bit,原版本4.4.7,不能支持C++11的特性~,希望升级到4.8.2 不能通过yum的方法升级,需要自己手动下载安装包并编译 本文记录了在Cent ...