Spring入门知识 ———— SpEl表达式

一、引言

小编第一眼看见这个SpEl表达式时,第一反应是,我学过这个吗? 小编工作这么久,Spring框架用了这么久,我咋没见过。 确实,这个SpEl表达小编在工作当中确实没用过,可能特殊的情况需要用到把。

但是,咱们小伙伴都是追求完美的,虽然小编没用过,但是也不代表没用呀,小编大概看了以下SpEl表达式功能还挺多的,大概掌握了解一下还是很有必要的,哈哈哈哈哈嗝~

 

二、SpEl表达式能干什么?

SpEl表达功能老多了,咱们一一看看,实例操作只是选举一些重要的演示。

先简单介绍一下:

Spring表达式语言(简称:SpEL),是一个支持运行时查询和操作对象的强大表达式语言。

语法类似于EL,SpEl使用#{}作为定界符,所有大括号中的字符都将被认为是SpEl

大概功能:

 - 字面量的表示: 比如来个整数吧:,还有小数、科学计算法等等

 - 引用其他Bean对象:原来是使用ref来引用其他Bean的,现在SpEl也可以啦

 - 引用其他Bean对象的属性,还可以调用方法

 - 支持运算符号、比较运算符、逻辑运算符、三元运算符 :比如 +、-、 *、 /、<、>、==等等等,

 - 还有一些细节,小编就不一一介绍了,反正挺多的,但是要说实用吗? 这个小编也不好说

三、实例操作

使用的Bean依旧是我们之前演示的Car、People对象

Car :拥有品牌(brand)、产地(orign)、价格(price)属性。

People:拥有姓名(name),Car对象,新增一个身份(identity)属性

接下来看bean的配置文件,由于功能太多,小编不过多演示,小伙伴需要了解SpEl表达式是个什么,大概有什么用处,就足以,如果工作有需要,则可以深究。



       
       
           
           
           
           
       

        
       
           
           
           
          
           
       

最后Main方法运行结果:

  public static void main(String[] args) {

        //就这么三行代码,就不要复制了,多手动敲敲

        BeanFactory beanFactory = new ClassPathXmlApplicationContext("applicationContext-five.xml");
        People people = (People)beanFactory.getBean("people");
        System.out.println(people.toString());
    }
十月 30, 2018 10:46:16 下午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@246b179d: startup date [Tue Oct 30 22:46:16 CST 2018]; root of context hierarchy
十月 30, 2018 10:46:16 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [applicationContext-five.xml]
People{name='Tom', identity='大地主', car=Car{brand='奥迪TT', origin='德国', price=1260000}}

Process finished with exit code 0

 

你可能感兴趣的:(Spring入门到源码之旅)