【长期更新】Play-Java开发技巧问答

1. 如何确定play项目的版本? - Play 2.x

    打开play项目根目录下project/plugins.sbt文件,找到添加sbt-plugin这一行,例如:

addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.2.1")

    sbt-plugin的版本号决定play项目的版本号。


2. Idea如何导入play项目? - Play 2.x

  1. 执行play idea生成idea项目
  2. 在Idea中,单击菜单File-Open(注意不是Import Project),打开play项目
  3. 在Project Structure窗口的Modules中,添加依赖target\scala-2.10\classes_managed


3. 不在Action中如何获取request()? - Play 2.2.1

Context.current().request()

其实底层使用thread locals寻找当前的request,response,session。


4. 只有几个表单参数,也要定义一个FormBean吗?No Play 2.2.1

import play.api.data.Forms._
form().bindFromRequest().get("name")


5. 页面没有传入Form<Entity>,如何使用@select? - Play 2.2.1

@import play.data.Form.form
@import helper._

@select(
  form(classOf[User])("id"),
  options(App.options)
)


6. 模板文件中如何使用模式匹配?- Play 2.2.1

    注意:case .. => 右边的{}不能缺:

@connected match {
    case Admin(name) => {
        <span class="admin">Connected as admin (@name)</span>
    }
}


7. 配置多个数据库时,非默认数据库(即非ebean.default)对应的实体类如何定义? - Play2.2.1 

//构造函数中需要传一个额外的serverName参数,否则会取默认的default EbeanServer
public static Finder<Long, EntityClass> find = new FInder<Long, EntityClass>("serverName", Long.class, EntityClass.class);





你可能感兴趣的:(java,开发,技巧,play,问答)