如何在控制器中传递参数值

时间:2017-07-01 11:49:53

标签: java scala playframework playframework-2.4

我有这段代码

class UserController @Inject() (var factory:FactoryHandler) extends Controller {
}

FactoryHandler.scala

class FactoryHandler(s:String) {
}

如何在playframework-2.4中的UserController中传递“s”参数值,请帮助我填写此参数以进行更多任务

1 个答案:

答案 0 :(得分:0)

应该避免以某种方式更改Injected对象的状态,因为此Injected对象也可以被其他控制器使用,并且修改后的状态可能导致不必要的错误。

理想的功能解决方案是将这个注入的类更改为case类,或者在课堂上自己实现一个copy方法。

case class FactoryHandler(s: String)
class UserController @Inject() (var factory:FactoryHandler) extends Controller {

  val updatedFactory = factory.copy(s="Updated Value")

  furtherProcessing(updatedFactory)
}