后台语言的应用入口都是从routes开始的,想要新建一个页面得学会配置routes. conf/routes 文件定义了所有应用URL的动做(Action),若是当浏览器请求访问http://localhost:9000/,应用将会返回一个页面,此时 routes 初始格式以下html
# Routes # This file defines all application routes (Higher priority routes first) # ~~~~ # Home page GET / controllers.Application.index
字面意思就是首页了[默认的首页是 view 下的index.scala.html].api
此定义告知play接收到HTTP GET/POST类型请求且路径为[/]时调用 controllers 包含Application类的index方法,对应的代码以下:浏览器
package controllers import play.api._ import play.api.mvc._ object Application extends Controller { def index = Action { Ok(views.html.index("Your new application is ready.")) } }
若是想要指定是哪一个文件能够修改routes:mvc
# Home page
GET /index.html controllers.Application.index
这个时候访问的地址就须要加上文件名了[http://localhost:9000/index.html].app
上面的 routes 定义 / 和 /index.html 对应了 Application.scala 代码块中的 index 方法来显示网页内容: spa
//全部的控制台代码按play规范均纳入controllers包 package controllers //导入play应用开发所须要的类库 import play.api._ import play.api.mvc._ //Application全局对象实例化,所以使用Object来声明Application并继承play的Controller类 object Application extends Controller { //定义index方法,任何toutes文件中指定调用的方法,必须放回Action对象来处理HTTP请求 def index = Action { //任何ACtion对象必须得到反返回的Result对象 //OK继承于Result对象,因此返回OK表示其包含的内容为HTTP 200 OK的状态 //在Scala最后一行代码等同于 return OK(views.html.index("Your new application is ready.")) Ok(views.html.index("Your new application is ready.")) } }
def 这个声明好像Rython,Ruby中的代码块声明.scala
OK表示HTTP请求成功状态,能够修改内容try一下:code
Ok(views.html.index("Hello World!"))
模板页面中的头部变成了 Hello World! .htm
了解了 routes Application Controller 之间的关系就能够本身建立文件了.对象
GET /show.html controllers.Application.show
def show = Action { Ok(views.html.index("Hello World!")) }
在 view 中新建文件show.scala.html copy index.scala.html中的代码块运行之...而后能够http://localhost:9000/show.html访问.