如何在 Play 框架中进行路由?
How to do routing in Play framework?
我是 Play Framework
的新手,正在尝试在 Intellij
中设置一个非常小的项目。所以,我遵循了一些基本步骤:
- 在 Intellij 中创建一个新项目
- 运行 它与 play 框架一起工作并且可以工作 (localhost:9000)
- 现在我在 Controller 包中添加了一个新的
Java
class 文件。
- 在
config/routes
文件中添加路由配置。
TestController.java
public class TestController extends Controller {
public F.Promise<Result> createTest() {
return F.Promise.promise(() -> TestEndpoints.createTest(Json.fromJson(request().body().asJson(),
Test.class))).map((result) -> ok(Json.toJson(result)));
}
路线
POST /Test controllers.TestController.createTest()
当我 运行 项目时,我得到了这个错误:
value createTest is not a member of object controllers.TestController
为什么会这样。一件事我刚刚注意到我的 Controller 文件夹有 Application.scala
而不是 Application.java
。我在这里做错了什么?
Play 切换为使用依赖注入,因此在控制器中引用函数的方式是:
POST /测试@controllers.TestController.createTest()
注意“@”
我是 Play Framework
的新手,正在尝试在 Intellij
中设置一个非常小的项目。所以,我遵循了一些基本步骤:
- 在 Intellij 中创建一个新项目
- 运行 它与 play 框架一起工作并且可以工作 (localhost:9000)
- 现在我在 Controller 包中添加了一个新的
Java
class 文件。 - 在
config/routes
文件中添加路由配置。
TestController.java
public class TestController extends Controller {
public F.Promise<Result> createTest() {
return F.Promise.promise(() -> TestEndpoints.createTest(Json.fromJson(request().body().asJson(),
Test.class))).map((result) -> ok(Json.toJson(result)));
}
路线
POST /Test controllers.TestController.createTest()
当我 运行 项目时,我得到了这个错误:
value createTest is not a member of object controllers.TestController
为什么会这样。一件事我刚刚注意到我的 Controller 文件夹有 Application.scala
而不是 Application.java
。我在这里做错了什么?
Play 切换为使用依赖注入,因此在控制器中引用函数的方式是:
POST /测试@controllers.TestController.createTest()
注意“@”