【Play】
文章平均质量分 63
立小言先森
这个作者很懒,什么都没留下…
展开
-
Play framework1.2.x java.io.IOException: invalid constant type: 18
搭建play framework环境的时候使用的是jdk1.8,报错Oops: UnexpectedExceptionAn unexpected error occured caused by exception UnexpectedException: While applying class play.classloading.enhancers.ContinuationE原创 2017-07-23 17:44:13 · 617 阅读 · 0 评论 -
Play framework Web Service client(WS调用远程服务器接口)
package utils;import java.util.HashMap;import java.util.Map;import play.libs.WS;import play.libs.WS.HttpResponse;import com.google.gson.JsonElement;public class GoGoalAPI {原创 2017-08-10 14:17:57 · 1360 阅读 · 0 评论 -
Play中获取web服务中所有类的实例的方法
import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.List;import play.Play;public class Teacher { public static void main(String[] args) { ...原创 2018-06-02 10:00:20 · 327 阅读 · 0 评论 -
Play框架文件上传Upload、FileUpload类使用详解
最近做一个前后台分离的项目,要用到前端页面传递文件对象给后端,就研究了一下框架中自带的类Upload接口、FileUpload类。1. 后端的控制器能够接收到play.mvc.Http.Request对象,这个对象中有一个args参数,args参数内还内嵌一个__UPLOADS属性,我们可以通过这样的关系获取文件对象 private static Map<String, F...原创 2018-07-13 23:22:11 · 1726 阅读 · 0 评论 -
Play framework环境搭建(mac电脑搭建开发环境)
1.首先下载play framework安装包,下载地址:https://playframework.com/download,下载版本play-2.2.6 2.配置环境变量,打开终端输入:vim ~/.bash_profile在编辑器中配置环境变量,如下:export PLAY_HOME=/Users/yaomingyang/Documents/IDE/play-2.2.6...原创 2017-07-15 16:03:35 · 3182 阅读 · 0 评论 -
Play framework如何使用play控制台
1.play控制台是一个基于SBT,允许你管理一个paly应用程序完整开发周期的开发控制台。 2.切换到play应用程序的目录,然后输入play run运行应用程序 3.你可以请求一个JPDA接口开启debug模式,使用play控制台命令:play debug ...原创 2017-07-15 17:26:38 · 1009 阅读 · 0 评论 -
Play framework路由(Http route)
路由是将每一个http请求转换为一个action调用的组件(在控制器中的一个静态的公用方法)每个request请求都被MVC框架看做是一个事件,这个事件包含两个主要信息:1.请求路径。2.请求方法 路由是被定义在conf/routes文件之中的,路由文件是被编译过的,所以如果路由对应的action不存在或者有问题都会直接报错,你可以在浏览器中直接看到路由报错信息。conf/rout...原创 2017-07-16 14:38:50 · 1458 阅读 · 0 评论 -
Play framework 响应response类型
改变默认的Content-type类型 返回的结果body类型会自动的从java结果值推断; 例如:Result textResult = ok("Hello World!");我们会自动的设置Content-Type头类型为text/plain,当 Result jsonResult = ok(je...原创 2017-07-18 09:24:30 · 993 阅读 · 0 评论 -
Play framework session和flash有效范围
如果你必须在多个http请求中保存数据,你可以保存它们在session和flash范围之内,存储在会话中的数据在整个会话中都是有效的,存储在flash作用域中的数据只适用于下一个请求。 重要的是要了解会话和flash数据不存储在服务器中,而是使用cookie将其添加到每个后续HTTP请求中。,这意味着数据的大小非常有限(最多4KB),并且只能存储字符串值; Cookie是一个用秘钥...原创 2017-07-18 10:57:49 · 1284 阅读 · 0 评论 -
Play framework Body分析器
什么叫做body分析器?一个HTTP请求(至少对于使用POST或者PUT的操作)包含一个body,这个body可以被格式化为任何指定在Content-type头指定的格式,一个JAVA解析器转换这个请求的body为Java结果值。 注意:你不能写BodyParser 直接使用JAVA来实现,因为一个Play BodyParser 必须处理body内容使用 Iteratee[Ar...原创 2017-07-18 20:01:26 · 1548 阅读 · 0 评论 -
Play framework Action、Controller和Result
什么是Action?Play应用程序接收到的大多数请求都是由一个Action操作处理,一个Action基本上是一个Java方法处理请求参数,并产生一个结果发送到客户端。 public static Result index() { return ok("Got request " + request() + "!");}一个Action返回一个play.mvc.Resu...原创 2017-07-19 18:12:13 · 1088 阅读 · 0 评论 -
Play framework处理异步结果
什么是异步结果?到现在为止,我们已经能够将计算结果直接发送到Web客户机了。情况并非总是如此,结果可能取决于结果的计算或长Web服务调用。 因为Play工作的方式,Action代码必须尽可能的快,那么,如果我们还不能计算结果,我们应该从action中返回什么呢?我们应该返回一个结果的承诺。一个 Promise<Result>最终将以类型结果的值返回,使用Promise&...原创 2017-07-19 19:32:24 · 1316 阅读 · 0 评论 -
play framework在eclipse中自动的预编译生成precompiled文件
一、修改 eclipe 中的启动文件属性eclipse/*.launch 中的最后一条:加入参数 -Dprecompile=yes 将会在启动项目时,进行项目的预编译(将在项目中生成 precompiled 文件夹,包含java 及 templates 文件夹)原创 2017-10-20 18:04:38 · 529 阅读 · 0 评论 -
Play framework自定义扩展JavaExtensions
不同的项目往往需要特定的格式化需求,在这种情况下可以提供自己的扩展。Play对自定义扩展做了很好的封装,只需要创建继承于play.templates.JavaExtensions的Java类即可。下面将以自定义货币格式扩展为例进行讲解:package ext; import play.templates.JavaExtensions; public class Currency原创 2017-08-05 17:05:04 · 409 阅读 · 0 评论 -
Play framework模板引擎扩展对象JavaExtensions
在模板引擎中使用Java对象是必不可少的,开发者还可以为其增加一些额外的方法。这些方法并没有定义在原始的Java类中,而是模板引擎动态添加的。例如,为了使模板中的数字进行格式化,可以为java.lang.Number对象增加format()方法,这样就可以非常简单地格式化数字:#{list items:products, as:'product'} ${product.nam原创 2017-08-05 16:57:10 · 670 阅读 · 0 评论 -
Play framework主要概念MVC应用模型
Play应用程序遵循应用于Web体系结构的MVC体系结构模式。此模式将应用程序分割成单独的层:表示层和模型层。表示层进一步拆分为视图和控制器层。该模型是应用程序运行的信息的特定领域表示。域逻辑为原始数据添加“意义”,大多数应用程序使用持久性存储机制(如数据库)来存储数据。MVC并没有特别提到数据访问层,因为它被理解为模型的底层或封装。视图将模型呈现为适合原创 2017-07-23 12:27:16 · 1214 阅读 · 0 评论 -
Play framework 入门
Play入门你使用Play的第一步,前五分钟的乐趣:Play框架是替代臃肿的企业java栈干净,它关注于开发人员的生产力和针对REST体系结构的目标。Play是敏捷软件开发的完美伙伴。Play框架的目的是消除Web应用发展的同时,坚持用java。让我们看看这是怎么可能的。一个没有痛苦的Java框架Play是纯Java框架,可以让你保持你的首选开发框架和库,如原创 2017-07-23 10:57:45 · 1858 阅读 · 0 评论 -
Play framework 路由(routes)
路由器是负责将传入HTTP请求转换为动作调用的组件(静态的、公共的控制器方法)。HTTP请求被MVC框架看作是一个事件。该事件包含两个主要信息:请求路径(例如,/clients/1542, /photos/list),包括查询字符串。HTTP请求方法(GET, POST, PUT, DELETE)关于REST无状态转移(REST)是分布式超媒体系统(如万维网)的原创 2017-07-23 18:14:29 · 4533 阅读 · 0 评论 -
Play framework HTTP form表单数据校验
使用Play校验HTTP数据验证保证数据是一定的值或满足特定的需求,你可以在保存Model数据到数据库之前校验数据是否正确,或直接使用HTTP参数来验证一个简单的形式。使用Play验证是如何发挥作用的每个request对象有它自己的Validation 对象来收集错误,这里有三种方法来定义validations;1.在控制器方法中,直接调用控制器方法来validation原创 2017-08-08 11:19:03 · 1674 阅读 · 0 评论 -
PlayPlugin插件类实现(插件能够在项目启动的时候自动的加载)
play框架本身基于此类提供了一些已经实现的plugin,比如:ConfigurablePluginDisablingPlugin,CorePlugin, DBPlugin, Evolutions, JobsPlugin, JPAPlugin, MessagesPlugin, TempFilePlugin,ValidationPlugin, WS这其中有我们非常熟悉的JobsPlugi原创 2017-08-16 14:16:38 · 1464 阅读 · 0 评论 -
Play framework自定义校验注释@CheckWith
1.POJO类package models;import java.util.Date;import play.data.validation.Check;import play.data.validation.CheckWith;import play.data.validation.Required;import play.templates.JavaE原创 2017-08-09 16:21:34 · 914 阅读 · 0 评论 -
Play framework 控制器(Controllers)
业务逻辑在域模型层中进行管理。作为客户端(通常是Web浏览器)不能直接调用此代码,一个域对象的功能暴露为代表的URI的资源。一个域对象的功能暴露为代表的URI的资源。原创 2017-08-02 20:23:49 · 1989 阅读 · 0 评论 -
Play framework模板引擎
模板引擎Play有一个高效的模板系统并且,它允许动态生成HTML,XML、JSON和任何其他的文本基础格式的文档,模板引擎使用Groovy表达式语言,标签系统允许你创建可重用的函数。模板存储在app/views目录下模板语法一个模板文件是一个文本文件,其中的某些部分被动态占位符占用,模板的动态部分是由Groovy表达式语言编写,Groovy表达式语言的语法很接近ja原创 2017-08-04 20:19:53 · 1325 阅读 · 0 评论 -
Play framework 可用的隐试对像
所有添加到renderArgs中的对象会直接映射为模板对象;例如:从一个控制器中映射一个user bean对象到模板中;renderArgs.put("user", user );当你渲染一个模板的时候框架也会添加内置的对象到模板中;VariableDescriptionAPI documentationSee also原创 2017-08-05 13:13:07 · 328 阅读 · 0 评论 -
Play framework自定义标签
1.创建自定义标签首先要在views下面创建一个tags文件夹2.现在我们创建一个hello标签也就是在tags文件夹下面创建一个hello文件,我们创建一个hello.html标签文件3.在页面中使用hello标签,如下代码:HELLO WORD#{hello/} 开学了标签页的代码:hello原创 2017-08-05 14:33:01 · 675 阅读 · 0 评论 -
Play framework使用java代码自定义标签--FastTags
Java自定义标签必须实现play.templates.FastTags类,标签对应的原型是:public static void _tagName(Map args, Closure body, PrintWriter out, ExecutableTemplate template, int fromLine)这些都是得益于约定优于配置,下面就举几个例子来看一下标签的用法:原创 2017-08-05 15:27:23 · 480 阅读 · 0 评论 -
Play framework 流的HTTP响应
标准响应和HTTP Content-Length头由于HTTP1.1,保持一个单独的连接打开,以服务多个HTTP请求和响应,服务器必须发送相应的Content-Length头和响应; 默认情况下,当您发送一个简单的结果时,例如: public static Result index() { return ok("Hello World");}你不会指定一个Con...原创 2017-07-20 09:07:28 · 1262 阅读 · 0 评论