Spring框架(Spring表达式(SpEL))
目录,更新ing,学习Java的点滴记录
目录放在这里太长了,附目录链接大家可以自由选择查看--------Java学习目录
Spring知识
第一篇---->初识Spring
第二篇---->深入SpringIoC容器(一)
第三篇---->深入SpringIoC容器(二)
第四篇---->依赖注入的方式
第五篇---->基于xml装配Bean
第六篇---->基于注解装配Bean
第七篇---->Spring Bean之间的关系
第八篇---->SpringBean的作用域
第九篇---->Spring 加载属性(properties)文件
第十篇---->Spring表达式(SpEL)
第十一篇---->Spring在xml中配置组件扫描
第十二篇—>认识SpringAOP及底层原理
第十三篇—>使用@AspectJ注解开发AOP
第十四篇—>使用xml配置开发AOP
10 使用Spring表达式(Spring EL)
10.1 Spring EL介绍
- Spring 表达式语言(简称SpEL):是一个支持运行时查询和操作对象图的强大的表达式语言。
- 语法类似于 EL:SpEL 使用 #{…} 作为定界符,所有在大括号中的字符都将被认为是 SpEL
- SpEL 为 bean 的属性进行动态赋值提供了便利
- Spring EL拥有很多功能
1) 使用Bean的id来引用Bean
2) 调用指定对象的方法和访问对象的属性
3) 进行运算
4) 提供正则表达式进行匹配
5) 集合配置
10.2 Spring EL相关类
10.3 Bean属性和方法–注解方式
- 使用注解的方式需要用到注解@Value,在属性文件读读取中使用的是"$",而在Spring EL中则使用"#".
- 使用Spring EL初始化User类
- 此外,其他的Bean也可以引用已经定义好的Bean的属性或者调用方法
10.4 Bean属性和方法–xml方式
- 字面量的表示
- 引用其他Bean
10.5 使用类的静态属性和方法
- 有时候我们可能用到静态方法和常量,比如Math.PI,注入方式很简单
- 这里的Math是java.lang包下的Math类,因为Java默认使用该包下面的类是不需要使用import进行导入的,对于Spring EL也是如此.如果Spring使用一个非该包的内容,就要给出全限定类名
- 下面演示调用静态方法,以Math类中的随机数方法为例
10.6 Spring EL运算
- Spring EL还支持各种运算
- 算术运算符:+,-,*,/,%,^
- 字符串连接,使用+号
- 比较运算符:<, >, ==, <=, >=, lt, gt, eq, le, ge
- 逻辑运算符:and, or, not, |
- if-lese语句
- if-else变形
- 正则表达式