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
随机推荐
- rails 里js 在production 只合并不压缩等问题,以及assets pipeline 加载js 在指定页面上
因为刚学rails,试着做了一个小系统操作微信公共帐号, 之后部署的时候遇见了一个问题,整套系统在互联网端访问,非常的慢,而在手机端访问,10s后才会有响应, 打开chrome的调试工具,发现appl ...
- 案例51-crm练习新增客户使用数据字典和ajax
1 案例效果 2 使用ajax加载数据字典下拉选-后台部分 1 domain部分-BaseDict package www.test.domain; public class BaseDict { / ...
- WebGL 踩坑系列-3
WebGL 踩坑系列-3 绘制球体 在 WebGL 中绘制物体时需要的顶点是以直角坐标表示的, 当然了,gl_Position 是一个四维的向量,一般将顶点赋值给 gl_Position 时,最后一维 ...
- Linux 下 zip 文件解压乱码解决方案,ubuntu16.10亲测可用
文章来源: https://www.zhihu.com/question/20523036 今天邮件中收到了一个压缩文件,解压后却是乱码,从网上也找了几个方法,目前这个方法还是比较可靠的,如下所示: ...
- js动态控制导航栏样式
导航栏一般做为母版页,为了使增加用户体验,往往在用户进入某个页面给予导航栏相应的样式,这里可以用js动态添加 <div class="box_left fl"> < ...
- position的参考基准
static(静态):position默认的样式:占据标准流的位置, 它会忽略top.bottom.left . right 的设置 relative(相对): 占据标准流的位置:可将其移至相对于其正 ...
- BZOJ4260: Codechef REBXOR (01Tire树)
题意 题目链接 Sol 首先维护出前缀xor和后缀xor 对每个位置的元素插入到Trie树里面,每次找到和该前缀xor起来最大的元素 正反各做一遍,取最大. 记得要开log倍空间qwq.. #incl ...
- js实现弹幕效果
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8& ...
- VS2015卸载方法
VS2015卸载 直接再控制面板的卸载程序中找到 VS2015 的程序,邮件更改,安装程序会被打开,里面有三个选项包含卸载,点击卸载[记得在卸载前如果有打开过 VS 最好重启一下,重启后不要打开 VS ...
- CRUD全栈式编程概述
业务场景 CRUD,从数据驱动的角度几乎所有的的业务都是在做这样的事情. 几乎所有的操作都是在做对表的增删改查. 假设我们将数据库数据规个类: 分为基础/配置数据和业务/增长数据,或者说静态数据 ...