Playframework 2.4中的自定义路由器

我正在使用Play 2.4。 我想用我自己的类,使用新的动态依赖注入播放功能替换默认路由器。 有什么步骤来做到这一点?


一种可能的解决方案是创建一个新的Guice模块来绑定你的新路由器:

class RouterModule extends AbstractModule {

  override def configure(): Unit = {
    bind(classOf[Router]).to(classOf[CustomRouter])
  }
}

然后通过使用新创建的模块定义一个新的Application Loader,它将覆盖默认配置的路由器:

class MyApplicationLoader extends GuiceApplicationLoader with GuiceableModuleConversions {

  override protected def overrides(context: Context): Seq[GuiceableModule] = {
    Seq(fromGuiceModule(new RouterModule)) ++ super.overrides(context)
  }
}

在application.conf中使用新创建的应用程序加载器,而不是默认的应用程序加载器:

play.application.loader = "de.zalando.store.pdp.modules.MyApplicationLoader"
链接地址: http://www.djcxy.com/p/26491.html

上一篇: Custom Router in Playframework 2.4

下一篇: Why do we need the From type parameter in Scala's CanBuildFrom