依赖注入之特殊值处理
①字面量赋值
什么是字面量?int a = 10;声明一个变量 a ,初始化为 10 ,此时 a 就不代表字母 a 了,而是作为一个变量的名字。当我们引用 a的时候,我们实际上拿到的值是10 。而如果 a 是带引号的: 'a' ,那么它现在不是一个变量,它就是代表 a 这个字母本身,这就是字面量。所以字面量没有引申含义,就是我们看到的这个数据本身。
<!-- 使用 value 属性给 bean 的属性赋值时, Spring 会把 value 属性的值看做字面量 --><property name = "name" value = " 张三 " />
②null值
<property name="name">
<null />
</property>
注意:
<property name="name" value="null"></property>
以上写法,为 name 所赋的值是字符串 null
③xml实体
<!-- 小于号在 XML 文档中用来定义标签的开始,不能随便使用 --><!-- 解决方案一:使用 XML 实体来代替,小于:< 大于:> --><property name = "expression" value = "a < b" />
④CDATA节
<property name = "expression" ><!-- 解决方案二:使用 CDATA 节 --><!-- CDATA 中的 C 代表 Character ,是文本、字符的含义, CDATA 就表示纯文本数据 --><!-- XML 解析器看到 CDATA 节就知道这里是纯文本,就不会当作 XML 标签或属性来解析 --><!-- 所以 CDATA 节中写什么符号都随意 --><value> <![CDATA[a < b]]> </value></property>
CDATA节IDEA快捷键:CD