我不理解Play Java中@With
注释的含义。
StackOverflow中的the same question似乎是Play1,而不是Play2。
在Play的最新版本文档中,我看到了这个例子。
@With(VerboseAction.class)
public Result verboseIndex() {
return ok("It works!"); }
这是什么意思?在上面的例子中,注释与没有注释之间有什么区别?
答案 0 :(得分:0)
很明显@With用于撰写动作:
public class VerboseAction extends play.mvc.Action.Simple {
public CompletionStage<Result> call(Http.Context ctx) {
Logger.info("Calling action for {}", ctx);
return delegate.call(ctx);
}
}
您可以使用play.mvc.Action
注释将操作方法提供的代码与另一个@With
进行编写:
@With(VerboseAction.class)
public Result verboseIndex() {
return ok("It works!");
}
因此,当verboseIndex
被调用时,首先会调用call
的方法VerboseAction
。因此,在此示例中,首先Logger.info
会写一些信息消息,然后ok
响应将完成。