12

算術演算を行って Spring Bean に注入する前に、分単位で表現される( String、明らかに) プロパティを に変換したいと考えています。int現在、次の SpEL 式があります。

#{T(java.lang.Integer).parseInt(myProperties['MIN_TIME']) * 60 * 1000}

myProperties単純なjava.util.PropertiesBeanはどこにありますか。

この式に特に悩まされているわけではありませんが、SpEL には、文字列を数値に解析するためのより適切な組み込みの方法がありますか?

ありがとう!

4

2 に答える 2

16

たとえば、開発者がここでそれらを作成する方法を見てください: https://jira.springsource.org/browse/SPR-8716

少し短いバージョンは

#{new Integer(myProperties['MIN_TIME']) * 60 * 1000}
于 2012-05-16T13:55:48.873 に答える
0

これを行う別の方法は、util 名前空間を使用してプロパティ Bean を定義することです。... xmlns:util="http://www.springframework.org/schema/util" ... http://www.springframework. org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd ...

<util:properties id="apiProperties"
    location="classpath:/api.properties" />

次に、プロパティ Bean の代替構文を使用します

@Value("#{apiProperties['api.orders.pingFrequency']}")
private Integer pingFrequency;

コンテキストによって生成された spring util properties Bean は、値を割り当てる前に解析と変換を行います。

于 2013-08-08T07:52:15.613 に答える