재생 프레임 워크를 배우려고합니다. 내 응용 프로그램에서 재생 프레임 워크의 수명주기 콜백을 구현하고 싶습니다.재생 프레임 워크 (2.5.x)의 수명주기 콜백을 구현하는 방법
object Global extends GlobalSettings {
override def onStart(app: Application) {
Logger.info("Application has started")
}
override def onStop(app: Application) {
Logger.info("Application shutdown...")
}
}
그러나이 플레이 프레임 워크 (2.5.x의)에서 사용되지 것 : 지금은 쉽게 GlobalSettings 아래을 사용하여 수행 할 수 있다고 보았다. 그리고 그들은 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를 사용하면 라이프 사이클 콜백을 구현하기가 쉽습니다. 라이프 사이클 콜백에 로거 정보를 구현한다고 가정합니다. 복잡한 코드가 없습니다.
시작, 중지 및 오류 콜백에 대해 어떻게 구현할 수 있습니까? 2.5.x ??
이 줄 바인딩 (classOf [Hello]). (classOf [EnglishHello]). asEagerSingleton. Hello 클래스와 왜 (classOf [EnglishHello])를 사용하는지, 그리고이 라인을 작성하여 여기서 무엇을하고있는지를 자세히 설명 할 수 있습니까? 나는이 프레임 워크에 익숙하지 않다. u는 더 쉬운 방법 plz에서 그것을 설명 할 수 있습니까 ?? –
'Hello'인스턴스를 요청할 때마다 (예 : class Bye @Inject() (h : Hello) {..}') 'EnglishHello'의 인스턴스가 삽입 (전달)됩니다. 의존성 주입이 guice의 생성자로부터이 대화에서 유익 할 수있는 방법에 대해 자세히 알아보십시오. https://www.youtube.com/watch?v=0iSB0L9avmg – rethab
ApplicationLifecycle 매개 변수를 사용하는 단위 테스트 클래스는 어떻게 할 수 있습니까? – Blankman