`
文章列表
所有章节的翻译到此结束,实现一个小应用作为结束!   按照play2.0官网的例子编写第一个play Application : todolist   步骤如下(详细的步骤及解释请查看原文):   先编写控制器如下:   aplication.java package controllers; import play.*; import play.data.*; import play.mvc.*; import models.*; import views.html.*; public class Application exten ...
#测试应用程序   测试资源文件必须放在应用的test目录下。你可以通过play控制台使用test和test-only来执行测试任务。   1.使用JUnit   Play2.0默认使用JUnit进行测试。 package test; import org.junit.*; import play.mvc.*; import play.test.*; import play.libs.F.*; import static play.test.Helpers.*; import static org.fest.assertions. ...
#应用程序全局设置   1.全局对象   在工程中定义全局对象可以允许你操作你的应用程序的全局设置。这个全局对象必须定义在根包下。 import play.*; public class Global extends GlobalSettings { }     2.应用程序启动和关闭的拦截   你可以重写onStart和onStop操作,通知对应的应用程序命周期事件。 import play.*; public class Global extends GlobalSettings { @Override ...
#外部消息和国际化   1.指定应用程序支持的语言   要知道应用程序支持的语言,你需要一个有效的语言代码,指定一个有效的ISO语言代码,可选项跟一个有效的ISO国家代码,例如,fr or en-US。 在conf/application.con文件中指定你的应用程序支持的语言: application.langs=en,en-US,fr     2.消息外部化   你可以在conf/messages.xxx文件中外部化消息。 默认的conf/messages文件匹配所有语言,你可以指定另外的语言信息(消息)文件。例如,conf/messages.fr,或者c ...
  #与Akka集成   akka使用Actor模型,提高抽象层次,并提供一个更好的平台,建立正确的并发和可伸缩的应用程序。 对于容错,它采用“让崩溃模式,该模型已在电信业的巨大成功,主要用于建立自我修复 - 系统永不停止的应 ...
  #Play的WS API   有时候你需要在Play应用中调用其他HTTP服务。Play通过它的play.libs.WS库提供了支持,它可以提供一种方式进行异步HTTP调用。 play.libs.WS产生的调用应当返回Promise<Ws.Response>类型,同Play的异步机制,你可以稍后处理它。   1.生成HTTP调用   要产生一个HTTP请求,首先你要使用WS.url()指定URL,然后得到一个生成器来指定HTTP选项,例如设置头等。 最后调用与你想要的HTTP相关的方法: Promise<WS.Response> homePa ...
  #Play缓存API   在现代应用程序中缓存数据是典型的优化方式,所以Play提供了一个全局缓存。缓存有一点很重要,存储在缓存中的数据可能会丢失。 对存储在缓存中的任意数据,生成策略需要落实到数据丢失的情况下。这个理念是Play的基础理念,不同与JAVA EE,JAVA EE中会话 值要在它的整个生命周期保存。 默认的缓存API实现使用EHCache。你也可以通过插件实现自己的缓存。   1.访问缓存API   play.cache.Cache对象提供了缓存API。这需要注册一个缓存插件。 这个API刻意做的很小用以运行各种实现被加入。如果你需要一个更具体的API,就 ...
  #访问Sql数据库   1.配置JDBC连接池   play2.0提供了管理JDBC连接池的插件。你可以安装需要来配置许多数据库。 要启用数据库插件,就要在conf/application.conf文件中配置一个连接池。根据约定默认的JDBC数据源,必须调用缺省: ...
#处理文件上传   1.在表单中用multipart/form-data上传文件。   在web应用中标准的文件上传方式是在表单中使用一个特殊的"multipart/form-data编码,它允许标准表单数据和文件附件混合使用: 例如: @form(action = routes.Application.upload, 'enctype -> "multipart/form-data") { <input type="file" name="picture"&g ...
  #XML请求的处理和服务   1.处理XML请求   xml请求是以有效的xml内容作为请求体的Http请求。它需要指定'text/xm"MIME类型的Content-Type头。 默认情况下,一个Action使用any content的BodyParser进行解析。你能把内容体转为XML。   ...
  #JSON请求的处理和服务   1.处理Json请求   Json请求是使用有效Json数据作为Http请求的请求体的。它的Content-type头必须指定为"text/json"或者"application/json"MIME类型。 默认的,一个动作使用any content 体解析器,你可 ...
  #处理表单提交   1.定义一个表单   play.data包下包含一些帮助处理Http表单数据提交和校验的工具。最容易的处理表单提交的方式是定义一个play.data.Form来包装现有的类: public class User { public String email; public String password; } Form<User> userForm = form(User.class);     注:底层数据绑定通过Spring的数据绑定实现。   这个表单可以生成一个User的结果值,值是HashMa ...
#模板引擎   1.基于Scala的类型安全的模板引擎   Play2.0的有个新的基于Scala的十分强大的模板引擎,它的设计灵感来自于ASP.NET的Razor。 具体来说: a.紧凑、表现力、流畅:它最大限度的减少了一个文件中所需字符和按键的 ...
  #处理异步结果   1.为什么使用异步Results?   直到现在,我们只能计算直接发送到客户端的result。这种方式并非总是奏效,result或许要花费高昂的计算代价,或者很长的web服务调用。 因为Play2.0工作时,action代码必须尽可 ...
  #Actions,contorllers,和Results的概念。   1.Action   Action的概念很熟悉吧,Play应用中的大部分请求都有Action来处理。Action可以看作是一个处理请求数据并产生一个结果放回给客户端的简单Java方法。 Action返回play.mvc.Result,代表H ...
Global site tag (gtag.js) - Google Analytics