Lambda 使用CompletionStage返回结果
我不熟悉框架和Java8。我正在尝试编写一个简单的web服务,它符合异步模型,并允许web服务调用快速返回,从而为异步线程留下沉重负担 我有一个非常基本的操作Lambda 使用CompletionStage返回结果,lambda,playframework-2.0,java.util.concurrent,concurrent.futures,completable-future,Lambda,Playframework 2.0,Java.util.concurrent,Concurrent.futures,Completable Future,我不熟悉框架和Java8。我正在尝试编写一个简单的web服务,它符合异步模型,并允许web服务调用快速返回,从而为异步线程留下沉重负担 我有一个非常基本的操作 public CompletionStage<Result> getPeople() { } 但这会导致编译错误 我真的很感激你的帮助;由于我对Java异步编程非常陌生,尽管阅读了大量教程,但我不清楚如何最好地使用这些教程 谢谢大家。您应该返回您的未来,但将结果转换为play.mvc.result: public Comp
public CompletionStage<Result> getPeople() {
}
但这会导致编译错误
我真的很感激你的帮助;由于我对Java异步编程非常陌生,尽管阅读了大量教程,但我不清楚如何最好地使用这些教程
谢谢大家。您应该返回您的未来,但将结果转换为play.mvc.result:
public CompletionStage<Result> getPeople() {
return dbService.getPeople().thenApply(peopleList ->
ok(Json.toJson(peopleList))
);
}
public CompletionStage getPeople(){
返回dbService.getPeople()。然后应用(peopleList->
ok(Json.toJson(peopleList))
);
}
您正在使用Play 2.5.x吗?使用supplyAsync
时的编译错误是什么?
CompletionStage<List<People>> getPeople() {}
public CompletionStage<Result> getPeople() {
CompletableFuture.completedFuture(
ok(Json.toJson(dbservice.getPeople().get())));
}
return CompletableFuture.supplyAsync(() -> {
return dbService.getPeople();
}).thenApply(i -> { ok(Json.toJson(i.get())); } );
public CompletionStage<Result> getPeople() {
return dbService.getPeople().thenApply(peopleList ->
ok(Json.toJson(peopleList))
);
}