在Spring中使用SpEl

1基于xml的配置

可以为bean属性或构造函数入参注入动态值

<bean id=”numberGuess” class=”org.spring.sample.NumberGuess”

       p:randomNumber=”#{T(java.lang.Math).random()*100.0}”/>

可以通过systemProperties获取各个系统环境变量

<bean id=”numberGuess” class=”org.spring.sample.NumberGuess”

       p:osName=”#{systemProperties[‘os.name’]”/>

可以引用其他bean的属性:

<bean id=”shapeGuess” class=”org.spring.sample.ShapeGuess”

       p:inittialShapeSeed=”#{numberGuess.randomNumber}”/>

2基于注解的配置

@value注解可以标注在类的属性、方法及构造器函数上,用于从配置文件中加载一个参数值。

@Component

Public class MyDataSource{

       @Value(“#{properties[‘driverClassName’]}”)

       PrivateString driverClassName;

}

需要在Spring中引入util工具命名空间

<util:properties id=”properties”location=”classpath:jdbc.properties”/>

在Spring的配置方法中添加一个“property-placeholder”,就可以在表达式中使用”${属性}”,

如下:

<context:property-placeholderproperties-ref=”properties”/>

@Component

Public class MyDataSource{

       @value(“${driverClassName}”)

       PrivateString driverClassName;

}


版权声明:本文为tomorrow_fine原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。