Play2.0 Scala:从config中提取数据作为字符串

时间:2012-10-27 16:42:06

标签: scala playframework playframework-2.0

在Play 2.0项目中使用Scala,我试图从配置文件中获取数据。

目前我使用以下代码提取字符串:

val foo = Play.current.configuration.getString("foo")

我原本希望得到一个String对象,而是返回一个Option[String]对象。

我找不到任何描述Option[T]对象的Java文档,并调用toString()返回Some( foo )

使用配置方法从配置中提取BooleanInt值时也会发生同样的情况 - 即返回Option[Boolean]Option[Int]

任何人都可以解释这个Option[T]对象是什么以及我如何以application方法调用暗示它将被返回的形式访问我想要的值?

1 个答案:

答案 0 :(得分:6)

在scala中,类型Option[T]表示类型T的可选值。如果您习惯使用Java术语,则可以将选项称为“可能为null”的值。

在Play中,它们在获取配置时被使用,因为字符串可能不存在 - 如果您尝试使用Java读取它,它将返回null

要获取配置字符串,您可以使用getOrElse,这样可以在配置字符串不存在时提供默认值:

val foo = Play.current.configuration.getString("foo").getOrElse("bar")