【发布时间】:2016-09-30 05:43:16
【问题描述】:
我正在尝试学习游戏框架。我想在我的应用程序中实现播放框架的生命周期回调。现在我看到使用下面的 GlobalSettings 可以轻松完成:
object Global extends GlobalSettings {
override def onStart(app: Application) {
Logger.info("Application has started")
}
override def onStop(app: Application) {
Logger.info("Application shutdown...")
}
}
但它已在 play framework(2.5.x) 中被弃用。他们为onStart 回调和onStop 和onError 提供了急切的绑定,还有其他机制。我查看了 2.5.x 版本的文档并看到如下代码:
import com.google.inject.AbstractModule
import com.google.inject.name.Names
class Module extends AbstractModule {
def configure() = {
bind(classOf[Hello])
.annotatedWith(Names.named("en"))
.to(classOf[EnglishHello]).asEagerSingleton
bind(classOf[Hello])
.annotatedWith(Names.named("de"))
.to(classOf[GermanHello]).asEagerSingleton
}
}
但不幸的是,我无法理解它。与使用 GlobalSettings 一样,实现生命周期回调很容易。假设我将在生命周期回调中实现一个 Logger 信息。没有复杂的代码。
如何在 2.5.x 中实现启动、停止和错误回调??
【问题讨论】:
标签: scala playframework application-lifecycle playframework-2.5