美文网首页spring零基础学习
spring学习8( SpEL 使用)

spring学习8( SpEL 使用)

作者: 又是那一片天 | 来源:发表于2017-07-21 17:26 被阅读0次

SpEL可以引用静态方法 使用运算符 引用其他bean属性 动态的为bean赋值

使用SpEL为属性赋值 为bean标签 value属性赋值格式 "#{值} "

<bean id="adderss" class="pojoa.Adderss">
    <property name="state" value="中国"></property>
        <!-- 使用spel为属性赋值 一个字面值 bean或String类型-->
    <property name="province" value="#{'四川'}"></property>
</bean>
  • 赋值的类型 一个字面值 bean或String类型
  • 字符是单引号

使用SpEL 引用类的静态属性 为bean标签 value属性赋值格式 "#{ T(类路径).值 } "

<bean id="car" class="pojoa.Car">
        <property name="brand" value="奔驰"></property>
        <property name="price" value="5000000"></property>
        <!-- 使用SpEL 引用类的静态属性 -->
        <property name="perimeter" value="#{T(java.lang.Math).PI*80}"></property>
</bean>

使用SpEL 引用其他的bean

<bean id="person" class="pojoa.Persons">
        <!-- 使用SpEL 引用其他的bean -->
        <property name="car" value="#{car}"></property>
        <!-- 使用SpEL 引用其他的bean的属性值 -->
        <property name="site" value="#{adderss.state+adderss.province}"></property>
        <!-- 使用SpEL 使用运算符 -->
        <property name="info" value="#{car.price>300000?'小康':'温饱'}"></property>
        <property name="name"  value="张三"></property>
</bean>
  • 不需要使用 ref 可直接在value属性中应用bean

使用SpEL 引用其他的bean的属性值 #{ bean的id.属性name }

    <bean id="person" class="pojoa.Persons">
        <!-- 使用SpEL 引用其他的bean -->
        <property name="car" value="#{car}"></property>
        <!-- 使用SpEL 引用其他的bean的属性值 -->
        <property name="site" value="#{adderss.state+adderss.province}"></property>
        <!-- 使用SpEL 使用运算符 -->
        <property name="info" value="#{car.price>300000?'小康':'温饱'}"></property>
        <property name="name"  value="张三"></property>
    </bean>

使用SpEL 使用运算符 (三目运算符)

<bean id="person" class="pojoa.Persons">
        <!-- 使用SpEL 引用其他的bean -->
        <property name="car" value="#{car}"></property>
        <!-- 使用SpEL 引用其他的bean的属性值 -->
        <property name="site" value="#{adderss.state+adderss.province}"></property>
        <!-- 使用SpEL 使用运算符 -->
        <property name="info" value="#{car.price>300000?'小康':'温饱'}"></property>
        <property name="name"  value="张三"></property>
</bean>

SpEL总结:

  • 都是要使用“ #{ } ” 这种格式扩起来

相关文章

网友评论

    本文标题:spring学习8( SpEL 使用)

    本文链接:https://www.haomeiwen.com/subject/zvmekxtx.html