安装sbt,可参考前一篇 文章
https://blog.csdn.net/huazi99/article/details/123392417?spm=1001.2014.3001.5502

一、创建helloworld项目
1、创建文件夹 playframe02,进入,
执行命令 playframe02>sbt new playframework/play-scala-seed.g8
(或之前有生成过项目文件夹play-scala-seed,直接copy也可)
2、弹出name等,默认回车即可
3、进入play-scala-seed文件夹,输入 sbt

4、输入 run

5、浏览器运行:http://localhost:9000/

二、项目目录介绍
项目创建完后,可用idea打开

官网介绍:

1、app/目录_
该app目录包含所有可执行工件:Java 和 Scala 源代码、模板和已编译资产的源代码。
目录中有三个包app,一个用于 MVC 架构模式的每个组件:
app/controllers
app/models
app/views
您可以添加自己的包,例如,一个app/services包。
注意:在 Play 中controllers和models包views名只是简单的约定,可以根据需要进行更改(例如在所有内容前加上com.yourcompany)。
还有一个可选目录app/assets,用于存放已编译的资产,例如LESS 源和CoffeeScript 源。

2、public/目录_
存储在public目录中的资源是由 Web 服务器直接提供的静态资产。

该目录分为图像、CSS 样式表和 JavaScript 文件的三个子目录。您应该像这样组织您的静态资产,以保持所有 Play 应用程序的一致性。
在新创建的应用程序中,/public目录映射到/assetsURL 路径,但您可以轻松更改它,甚至为静态资产使用多个目录。

3、conf/目录_
该conf目录包含应用程序的配置文件。有两个主要的配置文件:
application.conf是应用程序的主要配置文件
routes是路由器的定义文件。

如果您需要添加特定于您的应用程序的配置选项,最好在application.conf文件中添加更多选项。
如果库需要特定的配置文件,最好在conf目录下提供它。

4、lib/目录_
该lib目录是可选的,并且包含非托管库依赖项,即您想要在构建系统之外手动管理的所有 JAR 文件。只需将任何 JAR 文件拖放到此处,它们就会被添加到您的应用程序类路径中。

5、build.sbt文件_
您的项目的主要构建声明通常位于build.sbt项目的根目录中。

6、project/目录_
该project目录包含 sbt 构建定义:
plugins.sbt定义了这个项目使用的 sbt 插件。
build.properties包含用于构建您的应用程序的 sbt 版本。

7、target/目录_
该target目录包含构建系统生成的所有内容。了解此处生成的内容可能很有用:
classes/包含所有已编译的类(来自 Java 和 Scala 源)。
classes_managed/仅包含由框架管理的类(例如由路由器或模板系统生成的类)。将此类文件夹添加为 IDE 项目中的外部类文件夹会很有用。
resource_managed/包含生成的资源,通常是编译后的资源,例如 LESS CSS 和 CoffeeScript 编译结果。
src_managed/包含生成的源代码,例如模板系统生成的 Scala 源代码。
web/包含由sbt-web处理的资产,例如app/assets和public文件夹中的资产。

8、典型.gitignore文件
您的版本控制系统应忽略生成的文件夹。这是 Play 应用程序的典型.gitignore文件:
logs
project/project
project/target
target
tmp
dist
.cache
RUNNING_PID

9、默认 sbt 布局
您还可以选择使用sbt和Maven使用的默认布局。为了使用此布局,您必须禁用布局插件并为旋转模板设置显式监控:
lazy val root: Project = (project in file("."))
.enablePlugins(PlayScala)
// Use sbt default layout
.disablePlugins(PlayLayoutPlugin)

三、主要代码讲解

1、路由文件routes
—根路径及其指向,指向HomeController.scala中的index()方法

GET     /                                 controllers.HomeController.index()
GET     /assets/*file               controllers.Assets.versioned(path="/public", file: Asset)

2、HomeController.scala

class HomeController @Inject()(val controllerComponents: ControllerComponents) extends BaseController {def index() = Action { implicit request: Request[AnyContent] =>Ok(views.html.index())}
}

index()—函数名
Ok(views.html.index())–调取文件index.scala.html

3、index.scala.html

@main("Welcome to Play") {<h1>Welcome to Play!</h1>
}

@main(“Welcome to Play”) — main指调用main.scala.html,main(参数)

4、main.scala.html

@(title: String)(content: Html)<!DOCTYPE html>
<html lang="en"><head>。。。</head><body>@content  @title       </body>
</html>
@content  **调用index.scala.html文件中的 <h1>Welcome to Play!</h1>**
@title        **调用index.scala.html文件中的main里的参数,Welcome to Play**

后续教程,敬请期待。。。。

play_framework框架--教程(一)相关推荐

  1. 从零搭建React全家桶框架教程

    从零搭建React全家桶框架教程 源码地址:https://github.com/brickspert/react-family 欢迎star 提问反馈:blog 原文地址:https://githu ...

  2. Asp.net Ajax框架教程

    目录 (一).概述... (二).应用场景代码示例... 1).ScriptManager控件示例...     1. 在异步调用服务端注册客户端脚本新方法...     2. 捕获Ajax异步调用中 ...

  3. Konstrukt PHP REST框架 教程二

    Konstrukt PHP REST框架 教程二 入门 - 第2部分 在本教程中,我们假设你已经完成了第一个教程,因为它的基础上产生的代码从该. 谈判的Content-Type 在大多数情况下会发出一 ...

  4. 【SSM面向CRUD编程专栏 3】关于黑马程序员最全SSM框架教程视频,P37集老师跳过的模块创建以及tomcat下载安装配置和运行等诸多问题

     写在前面:​        本人是在学习B站黑马程序员SSM框架教程视频的时候在P37集遇到了问题,如果不解决还没办法往下接着听,老师跳过的模块创建以及tomcat下载安装配置和运行等诸多问题,全在 ...

  5. Spring 框架教程

    Spring 框架教程 Spring Framework是最流行的Java EE框架之一.本文面向希望学习Spring框架体系结构的Java开发人员,它的核心组件以及属于Spring框架伞的各种项目. ...

  6. Spring教程 - Spring核心框架教程

    Spring教程 - Spring核心框架教程 Spring是最广泛使用的Java EE框架之一.我已经在Spring Tutorial上写了很多内容,这是一篇摘要文章,它将作为索引按顺序完成所有这些 ...

  7. API接口开发其实特简单,Python Flask Web 框架教程来了

    大家好,日常工作中,无论你是数据工程师.数据挖掘工程师,甚至数据分析人员,都不可避免的与他人进行数据交互,API接口提供数据是最常见的形式. 今天我给大家分享 Python Flask Web 框架教 ...

  8. Asp.net Ajax框架教程[教程下载]

    Asp.net Ajax 框架教程 目录 (一).概述... (二).应用场景代码示例... 1).ScriptManager控件示例...      1. 在异步调用服务端注册客户端脚本新方法... ...

  9. MyEclipse使用Maven创建web项目+搭建SSM框架教程

    MyEclipse使用Maven创建web项目+搭建SSM框架教程 博文中的代码:链接:http://pan.baidu.com/s/1o8tqIMI 密码:m3si 安装maven和配置 1.下载m ...

最新文章

  1. SSH框架的简单搭建步骤
  2. web.config mysql_web.config配置mysql数据库连接
  3. 剑指企业级云原生,阿里云 CNFS 如何破局容器持久化存储困境
  4. MySQL 修改和删除触发器
  5. 闲说HeartBeat心跳包和TCP协议的KeepAlive机制
  6. 绕开“陷阱“,阿里专家带你深入理解C++对象模型的特殊之处
  7. 小米刷原生android系统下载地址,小米6刷原生安卓8.0下载|小米6刷原生安卓p 免费版_附教程_最火软件站...
  8. Java通过图片URL把图片上传到本地服务器
  9. 《工业设计史》第七章:艺术变革与现代设计
  10. 汽车级485通信电路
  11. Matlab plot3显示成平面图像
  12. 四、FFI和第三方模块
  13. python xmind_Python 使用Python操作xmind文件
  14. python调用固高GSN运动控制卡dll
  15. post_thumbnail_html,WordPress 文章特色图片(Post Thumbnail)详细介绍和使用
  16. Java计算两个时间的小时差
  17. TOUGH2系列建模方法及在CO2地质封存、水文地球化学、地热、地下水污染等领域中的实践技术
  18. 看完这篇文章,保你学会C语言while循环与 do while 循环
  19. 2018年最新人工智能书单,总有一本你爱的
  20. Python123测验4: 程序的控制结构 (第4周)

热门文章

  1. 看傲腾配OpenCAS加速联通沃云业务
  2. Beego-HelloWorld
  3. 爬取虎牙TV全站主播信息
  4. 独立开发变现周刊(第44期):12岁的小男孩在9个小时内NFT卖了40万美元!
  5. 湖北地图html代码,echarts全国省市地图代码
  6. Java判断本周属于该年的第几周
  7. 【sdx62】WCN6855 WCN6856 WiFi 增加强制40MHz频宽的功能实现
  8. 再生龙(Clonezilla)
  9. App耗电及Crash体验优化
  10. 小程序 实现两种导航功能