§Play 应用程序概述
本教程以一个简单的 Play 应用程序为例,我们可以通过它来学习 Play。让我们先看看运行时发生了什么。当您在浏览器中输入 https://127.0.0.1:9000/
- 浏览器使用
GET
方法向 HTTP 服务器请求根/
URI。 - Play 内部 HTTP 服务器接收请求。
- Play 使用
routes
文件解析请求,该文件将 URI 映射到控制器操作方法。 - 操作方法使用 Twirl 模板渲染
index
页面。 - HTTP 服务器将响应作为 HTML 页面返回。
从高层次来看,流程如下所示
§探索项目
接下来,让我们看看教程项目,找到以下内容的实现:
- 将请求映射到控制器方法的 routes 文件。
- 定义如何处理对根 URI 的请求的控制器操作方法。
- 操作方法调用的 Twirl 模板,用于渲染 HTML 标记。
按照以下步骤深入源文件
注意:在以下步骤中,对于 Windows shell,请使用 \ 代替 / 作为路径名(但不需要更改 URL 路径名)。
使用命令窗口或 GUI,查看顶层项目目录的内容。以下目录包含应用程序组件
app
子目录包含controllers
和views
的目录,对于熟悉 Model View Controller (MVC) 架构的人来说,这些目录应该很熟悉。由于这个简单的项目不需要外部数据存储库,因此它不包含models
目录,但您可以在此处添加它。public
子目录包含images
、javascripts
和stylesheets
的目录。conf
目录包含应用程序配置。有关项目结构其余部分的详细信息,请参见 Play 应用程序的结构。
要找到控制器操作方法,请使用您喜欢的文本编辑器打开 app/controllers/HomeController.java
(或 .scala
)文件。Homecontroller
类包含 index
操作方法,如下所示。这是一个非常简单的操作方法,它从 index.scala.html
Twirl 模板文件生成一个 HTML 页面。
- Java
-
public Result index() { return ok(views.html.index.render("Your app is ready.")); }
- Scala
-
def index = Action { Ok(views.html.index("Your new application is ready.")) }
要查看将浏览器请求映射到控制器方法的路由,请打开conf/routes
文件。路由由 HTTP 方法、路径和操作组成。这种对 URL 架构的控制使设计简洁、易读、可书签的 URL 变得容易。以下行将对根 URL /
的 GET 请求映射到HomeController
中的index
操作
GET / controllers.HomeController.index
使用文本编辑器打开app/views/index.scala.html
。此文件中的主要指令使用字符串“Welcome to Play”调用主模板main.scala.html
来生成页面。您可以打开app/views/main.scala.html
查看String
参数如何设置页面标题。
通过对本教程应用程序的概述,您已准备好添加“Hello World”问候语。
下一步: 实现 Hello World
在本文档中发现错误?此页面的源代码可以在此处找到。阅读文档指南后,请随时贡献拉取请求。有疑问或建议要分享?前往我们的社区论坛与社区进行对话。