一种全新的开发技术架构Play + Scala:教程: Play Framework 2 with Scala, Anorm, JSON, CoffeeScript, jQuery & Heroku,大概步骤:
1.下载安装Play2 RC2
2.创建一个应用: play new foobar,提示中选择Scala
3.在新创建的目录foobar中生成IDE配置文件,如使用IntelliJ,play idea;如是eclipse: play eclipsify
4.启动Play服务器:
play run
可在浏览器键入http://localhost:9000
5. Play 2 with Scala并不提供缺省的ORM,使用的Anorm,Anorm并不是一个类似Hibernate的ORM,不能自动创建数据表结构,创建一个文件:conf/evolutions/default/1.sql,在里面写入SQL语句:
|
Anorm能够使用Scala的"case class"作为值对象,作为一个单例实例进行持久和CRUD的接口对象,创建一个Scala的Bar case class,文件名为:app/models/Bar.scala
|
6.在conf/application.conf中配置一个内存h2数据库数据源:
db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play"
7.创建一个应用控制器用来转换Http请求到Bar对象,然后保存到数据库,app/controllers/Application.scala:
|
8.创建一个映射POST请求路由到上面应用控制器,配置在"conf/routes":
|
9.编辑MVC的界面:app/views/index.scala.html
|
在浏览器键入http://localhost:9000,进行数据库构建,测试表单,如果一切正常,当按表单提交,应该转到index页面。
10.在app/controllers/Application.scala创建一个JSON服务用来获得所有bar实例集合:
|
将 “/listBars” 加入conf/routes:
GET /listBars controllers.Application.listBars
在浏览器测试http://localhost:9000/listBars
11.在app/assets/javascripts/index.coffee创建一个CoffeeScript 文件使用jQuery抓取JSON包,遍历Bar对象集合,逐个当前页面显示:
|
12.修改app/views/index.scala.html,使用自动编译的javascript源码:
|