gpt4 book ai didi

scala - Play Framework 2.4 中的自定义路由器

转载 作者:行者123 更新时间:2023-12-04 08:34:09 25 4
gpt4 key购买 nike

我正在使用 Play 2.4。我想用我自己的类替换默认路由器,使用新的动态依赖注入(inject) Play 功能。这样做的步骤是什么?

最佳答案

一种可能的解决方案是创建一个新的 Guice 模块,以绑定(bind)您的新路由器:

class RouterModule extends AbstractModule {

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

然后使用新创建的模块定义一个新的应用程序加载器,它将覆盖默认配置的路由器:
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"

关于scala - Play Framework 2.4 中的自定义路由器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30391329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com