繁体   English   中英

Spring表达式语言(SpEL):将String解析为int

[英]Spring expression language (SpEL): parse String to int

我有一个(明显的String )属性,以分钟表示,我想在我做一些算术之前转换为int并将其注入我的Spring bean。 现在我有这个SpEL表达式:

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

其中myProperties是一个简单的java.util.Properties bean。

并不是说我对这个表达式特别恼火,但是:SpEL是否有更漂亮的内置方法将字符串解析成数值?

谢谢!

看起来不像,例如看看开发人员如何在这里创建它们: https//jira.springsource.org/browse/SPR-8716

稍微短一点的版本可能是

#{new Integer(myProperties['MIN_TIME']) * 60 * 1000}

另一种方法是使用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属性bean将在分配值之前进行解析和转换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM