博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring属性注入
阅读量:5231 次
发布时间:2019-06-14

本文共 1933 字,大约阅读时间需要 6 分钟。

对于类成员变量,注入方式有三种:

  • 构造函数注入
  • 属性setter方法注入
  • 接口注入

Spring支持前两种

构造函数注入

<bean id="user" class="com.demo.ioc.user">

  <constructor-arg name="name" value="张三"/>

  <constructor-arg name="age" value="23"/>

</bean>

 

属性注入

属性setter方法注入

<bean id="person" class="com.Person">

    <property name="name" value="里斯"/>

    <property name="age" value="32">

    <property name="cat" ref="cat">

</bean>

<bean id="cat" class="com.Cat">

    <property name="name" value="ketty"/>

</bean>

 

p名称

  • 使用p命名空间
  • 为了简化XML文件配置,Spring从2.5开始引入一个新的p名称空间
  • p:<属性名> = "xxx"引入常量值
  • p:<属性名> - ref="xxx"引用其他Bean对象

 

在命名空间中添加

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

<bean id="person" class="com.demo.Person"  p:name="大黄"/>

<bean id="cat" class="com.demo.cat" p:name="小黄"/>

 

SpEL注入

  • SpEL:spring expression language ,spring表达式语言,对依赖注入进行简化
  • 语法:#{表达式}
  • <bean id="" value="#{表达式}">

SpEL表达式语言

  语法:#{}

  #{'hello'}:使用字符串

  #{beanId}:使用另一个bean

  #{beanId.content.toUpperCase()}:使用指定名属性,并调用它的方法

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

 

 

 

  

复杂类型的属性注入

1.数组类型的属性注入

2.List集合类型的属性注入

3.Set集合类型的属性注入

4.Map集合类型的属性注入

 

aaa
bbb
ccc
111
222
333
root
1234

 

   

转载于:https://www.cnblogs.com/yangHS/p/11384408.html

你可能感兴趣的文章
python 基础 ----- 变量
查看>>
设计模式课程 设计模式精讲 2-2 UML类图讲解
查看>>
Silverlight 的菜单控件。(不是 Toolkit的)
查看>>
:hover 鼠标同时触发两个元素变化
查看>>
go语言学习十三 - 相等性
查看>>
Idea 提交代码到码云(提交到github也大同小异)
查看>>
c#连接excel2007未安装ISAM解决
查看>>
Mono 异步加载数据更新主线程
查看>>
初识lua
查看>>
我是插件狂人,jDuang,jValidator,jModal,jGallery
查看>>
张季跃 201771010139《面向对象程序设计(java)》第四周学习总结
查看>>
如何解除循环引用
查看>>
android中fragment的使用及与activity之间的通信
查看>>
jquery的contains方法
查看>>
python3--算法基础:二分查找/折半查找
查看>>
Perl IO:随机读写文件
查看>>
Perl IO:IO重定向
查看>>
转:基于用户投票的排名算法系列
查看>>
WSDL 详解
查看>>
[转]ASP数组全集,多维数组和一维数组
查看>>