play!framework框架概述
业务逻辑是在域模型中层里进行管理,客户端无法直接调用业务逻辑代码,客户端是通过资源的URI来访问域对象。
客户端使用HTTP协议中提供的统一方法来访问这些特定资源,并隐式调用底层的业务逻辑。
在play框架中,控制器其实就是一个java类,位于controllers包中,继承了父类play.mvc.Controller
简单实例:
public class Clients extends Controller {
public static void show(Long id){
Client client = Client.findById(id);
render(client);
}
public static void delete(Long id){
Client client = Client.findById(id);
client.delete();
}
}
play将所有的模板文件都放在app/views目录下,所有页面都是在请求时解析的。
app/views目录说明:
Application:存放应用主controller程序的模板
errors:存放错误页面模板,例如404/500等
main.html:主页面模板
play框架的set指令用于设置页面的标题,这些指令都要进行关闭,最后一行打印欢迎信息
play框架使用render方法来处理参数的传递。比如我们在controller中读取一些数据,病将这些数据传递到view中进行显示。
render(hello),在模板中获取变量用${hello}
play框架自带很多的标签,但是可以自己创建一些,我们现在views目录下创建名为tags的子目录。
play框架默认使用jQuery发送Ajax请求。也提供了jsAction标签透明的从控制器得到一个定义的方法。
play有一个缓存的库,当需要在分布式的系统中使用时,用的是memcached.如果不配置memcached,play会使用独立的缓存,将数据存放在jvm的堆中。
当你把数据放进缓存里的时候,你不能期望数据永远保存在哪里,缓存很快,但是数据会失效,而且环迅通常只存在在内存里(如果没有持久化备份的话)。
所以使用缓存最好的办法是在你不需要它的时候清空它。
缓存API是由类play.cache.Cache提供的,这个类包含了一系列的方法,可以设定,替换,得到缓存中的值。
play框架的Scala模块
play包含了对Scala编程语言的支持,要启用Scala支持只需要在conf/application.conf文件中配置:
module.scala=${play.path}/modules/scala
接下来就可以在已有的应用中使用scala来编写代码,也可以是java和scala混合编码。
不建议在生产环境中完全使用scala来编写play应用。
Scala编写应用的步骤:
创建应用:
play new myApp –with scala
一旦使用这个命令创建应用后,controllers包中的Application.java就变成了Application.scala文件
Scala应用可以直接让某个方法返回值
def index = “
hello world
”
处理Action的参数
def index(name:String) =
hello {name}
还可以定义默认值
def index(name:String = “Guest”) =
hello {name}
如果使用了默认值,那么一旦请求中不包含指定的参数,play会自动用默认值替代。
使用play发送邮件:
可以使用play.libs.Mail工具类发送邮件。
bc.Mail.send(“sender@abc.com”,”recipient@abc.com”,”Subject”,”Message”);
play不是一个需要添加到Servlet容器中的类库,而是一个可以独立运行你的应用的全栈式Java框架。
play!framework框架概述相关推荐
- Tapestry框架概述
Tapestry带来了真正的Java web应用程序OOP编程,摘自<深入浅出Tapestry>中的一句话.这本书也是我学习Tapestry的参考之一,其他参考资料如<Tapestr ...
- [转载] 快速学习-Mybatis框架概述
参考链接: Java在竞争性编程中的快速I/O 第1章 框架概述 1.1 什么是框架 1.1.1 什么是框架 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互 ...
- java day53【 Mybatis框架概述 、 Mybatis 框架快速入门、自定义 Mybatis 框架 】
第1章 框架概述 1.1 什么是框架 1.1.1 什么是框架 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种 定义认为,框架是可被应用开发者定 ...
- Spring框架概述
Spring框架概述 Spring是一个Service层的框架,可以整合许多其它框架进行工作. Spring的主要技术是 IOC(DI) AOP IOC(DI) - 控制反转(依赖注入) AOP - ...
- Spring入门到精通:第一章 基础入门:1.Spring框架概述
Spring入门到精通:第一章 基础入门:1.Spring框架概述 前言:为什么要学习Spring框架? 为什么要学习Spring框架呐? (1)使用广泛:现在很多的企业都有Spring的影子,不管是 ...
- iOS之图形处理框架概述和GPUImage处理框架的使用
iOS图形处理框架概述:OpenGL ES,Metal,Core Graphics,Core Image,GPUImage,Scene Kit (3D) ,Sprite Kit (2D),OpenCV ...
- 2021年大数据Spark(一):框架概述
目录 Spark框架概述 Spark 是什么 分布式内存迭代计算框架 官方定义: Spark框架概述 Spark 是加州大学伯克利分校AMP实验室(Algorithms Machines and Pe ...
- .Net 初步学习笔记之一——.Net 平台与.Net FrameWork框架的关系
.Net 包含两部分 .Net平台 和.Net FrameWork 框架 1..Net FrameWork框架包含于.Net平台. .Net FrameWork提供环境和支撑保证.Net平台运行. 2 ...
- php excel 组件,Yii Framework框架使用PHPExcel组件的方法示例
本文实例讲述了Yii Framework框架使用PHPExcel组件的方法.分享给大家供大家参考,具体如下: PHPExcel下载地址http://www.yiiframework.com/exten ...
最新文章
- 内存性能参数详解(转载)
- [置顶] 安全-用户身份验证
- 关于网页制作的规划与流程图的使用
- energy计算机电脑,energy management
- jQuery图表插件Flot
- WPF 绑定StaticResource到控件的方法
- C语言对stm32f103程序,STM32F103WIFI程序C语言
- Intel® Nehalem/Westmere架构/微架构/流水线 (8) - 重复字符串指令增强
- mysql分页总页数算法解析_详解MySQL的limit用法和分页查询语句的性能分析
- URL地址 长度超出限制问题解决
- selenium中键盘操作:Keys类
- 如何实现bat一键关机
- matlab怎样求线性方程组,MATLAB线性方程组求解
- 解决:return _compile(pattern, flags).search(string) TypeError: expected string or buffer
- Unity3D 对于在VR中普通摄像头和VR摄像头同时存在——分屏
- 系统架构设计基础(一)
- 机械设计自动化行业现在吃香吗?有前途吗?
- filecoin space race
- 下标运算符究竟是单目运算符还是双目运算符
- 区块链基础理论与研究概况(前沿版)