1、使用p命名空间简化配置(了解)
-
名称:p:propertyName,p:propertyName-ref
-
类型:属性
-
归属:bean标签
-
作用:为bean注入属性值
- 格式:
- 注意:使用p命令空间需要先开启spring对p命令空间的的支持,在beans标签中添加对应空间支持
- 案例:
2、SpEL (了解)
-
Spring提供了对EL表达式的支持,统一属性注入格式
-
类型:属性值
-
归属:value属性值
-
作用:为bean注入属性值
- 格式:
-
注意:所有属性值不区分是否引用类型,统一使用value赋值
-
所有格式统一使用 value=“****”
-
常量 #{10} #{3.14} #{2e5} #{‘itcast’}
-
引用bean #{beanId}
-
引用bean属性 #{beanId.propertyName}
-
引用bean方法 beanId.methodName().method2()
-
引用静态方法 T(java.lang.Math).PI
-
运算符支持 #{3 lt 4 == 4 ge 3}
-
正则表达式支持 #{user.name matches‘[a-z]{6,}’}
-
集合支持 #{likes[3]}
-
- 案例:
3、properties文件
-
Spring提供了读取外部properties文件的机制,使用读取到的数据为bean的属性赋值
操作步骤:
3.1、准备外部properties文件
3.2、开启context命名空间支持
3.3、加载指定的properties文件
3.4、使用加载的数据
-
注意:如果需要加载所有的properties文件,可以使用
*.properties
表示加载所有的properties文件 -
注意:读取数据使用${propertiesName}格式进行,其中propertiesName指properties文件中的属性名
5、这时候运行代码会报错,我们应该在 开启context命名空间支持的下面,添加如下代码。
4、团队开发
-
名称:import
-
类型:标签
-
归属:beans标签
-
作用:在当前配置文件中导入其他配置文件中的项
- 格式:
- 基本属性:
resource:加载的配置文件名
- Spring容器加载多个配置文件
-
Spring容器中的bean定义冲突问题
-
同id的bean,后定义的覆盖先定义的
-
导入配置文件可以理解为将导入的配置文件复制粘贴到对应位置
-
导入配置文件的顺序与位置不同可能会导致最终程序运行结果不同
-