EL表明式经常看见用法

先是章 EL表明式不足为道用法,第风流倜傥章el表明式

el最常用的三种选用境况:

  • 从布置文件中读取属性
  • 缺点和失误值情形下,配置暗中同意值
  • el内部字符串使用String的办法
  • 三目运算符
  • 正则表明式
  • 流入系统天性(system properties)
  • 调用系统本来函数
  • 直接注入文件实行操作
  • 读取另一个bean的函数的重返值

1、从布局文件中读取属性

application.properties

name=u8D75u8BA1u521A

1     @Value("${name}")//这里必须使用$,使用#是不行的
2     private String name;
3     @RequestMapping(value = "/name", method = RequestMethod.GET)
4     public String getName() {
5         return name;
6     }

瞩目:记住下面两句话

  • ${}读取属性文件的值
  • ${}读取最终三个满意条件的值;#{}读取全部满足条件的值

2、缺点和失误值意况下,配置暗许值

1     @Value("${name2:'刚子'}")//这里必须使用$,使用#是不行的
2     private String name2;
3     @RequestMapping(value = "/name2", method = RequestMethod.GET)
4     public String getName2() {
5         return name2;
6     }

3、el内部字符串使用String的点子

1 name.list=u8D75u8BA1u521A,u738Bu5A1C

1     @Value("#{'${name.list}'.split(',')}")
2     private List<String> nameList;
3     @RequestMapping(value = "/nameList", method = RequestMethod.GET)
4     public List<String> getNameList() {
5         return nameList;
6     }

4、三目运算符

1 name.three=u6768u8FC7

1     @RequestMapping(value = "/nameThree", method = RequestMethod.GET)
2     public String getNameThree(@Value("${name.three!='杨过'?'黄蓉':'小龙女'}") String nameThree) {
3         return nameThree;
4     }

留意:@value能够直接作为入参

5、正则表明式

1     @Value("#{'100' matches '\d+'}")//这里必须使用#,使用$是不行的
2     private boolean isDigital;
3     @RequestMapping(value = "/nameRegEx", method = RequestMethod.GET)
4     public boolean getNameRegEx() {
5         return isDigital;
6     }

6、注入系统质量

1     @Value("#{systemProperties['os.name']}")//这里必须使用#,使用$是不行的
2     private String osName;
3     @RequestMapping(value = "/osName", method = RequestMethod.GET)
4     public String getOsName() {
5         return osName;
6     }

7、调用系统原来函数

1     @Value("#{T(java.lang.Math).random() * 10}")//注意:这里只生成一次,之后你无论调用多少次getRandomValue(),都返回同一个值
2     private String randomValue;
3     @RequestMapping(value = "/randomValue", method = RequestMethod.GET)
4     public String getRandomValue() {
5         return randomValue;
6     }

8、间接流入文件实行操作

testfile/testEl.txt

1 乔峰--降龙十八掌
2 杨过--黯然销魂掌

 1     @Value("classpath:testfile/testEl.txt")
 2     private Resource txtResource;
 3     @RequestMapping(value = "/resource", method = RequestMethod.GET)
 4     public String getResource() {
 5         try {
 6             return IOUtils.toString(txtResource.getInputStream(), "UTF-8");
 7         } catch (IOException e) {
 8             ExceptionUtils.getStackTrace(e);
 9         }
10         return StringUtils.EMPTY;
11     }

留心:那几个非常重大,操作文件使用Apache.commons.io.IOUtils来操作。

9、读取另三个bean的函数的再次回到值

1 @Component("eLComponent")
2 public class ELComponent {
3     public String getNameBean(){
4         return "乔峰";
5     }
6 }

1     @Value("#{eLComponent.getNameBean()}")//这里必须使用#,使用$是不行的
2     private String nameBean;
3     @RequestMapping(value = "/nameBean", method = RequestMethod.GET)
4     public String getNameBean() {
5         return nameBean;
6     }

专一:被调用bean最棒钦定一下beanName。

EL表明式不问不闻用法,第后生可畏章el表明式 el 最常用 的三种接收景况: 从安插文件中读取属性 缺点和失误值情形下,配置私下认可值 el内部字符串使...

本文由华夏彩票发布于计算机网络,转载请注明出处:EL表明式经常看见用法

您可能还会对下面的文章感兴趣: