您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
   
 
 
     
   
 订阅
  捐助
Play Framework 2.0 介绍
 
作者:雲霏霏 来源:博客园 发布于 2015-12-2
   次浏览      
 

Play Framework 刚刚发布了 2.0 正式版,来看看 Play Framework 2.0 的新特性介绍吧。

原生支持 Java 和 Scala

Play Framework 1.x 完全是采用 Java 编写的,可通过插件来支持 Scala,而 2.0 版本已经完全内置对 Scala 的支持,而且 Play 也首推使用 Scala 开发应用,你可以同时使用 Scala 和 Java 来开发 Play 应用。

使用 Java 编写的控制器

使用 Scala 编写的控制器

快速引用开发

在 1.x 版本中,提供了 “Play feel” 基于控制台的应用发布和基于浏览器的错误报告,而 Play 2.0 大大的扩展了开发者执行代码片段、测试以及在运行应用上下文中执行 SHELL 脚本的能力

Pushing Type Safety to a New Level

受益于静态类型语言,编译器可单独对你的代码中的某一部分进行检查,这也就是为什么 Play 2.0 默认使用基于 Scala 模板引擎编写 Play 应用的原因。这并不是说你必须是精通 Scala 才能办到。但熟悉 Scala 对开发 Play 2.0 应用是很有好处的。

Play 2.0 在进行编译和类型检查更加的深入,Routes (用来定义 URL 和 action 的映射), 模板以及资源可直接编译 (使用 LESS, CoffeeScript 和 Google Closure compiler),提供了一个统一的开发流程,不管是客户端开发还是服务器端。其结果是更多的错误将在开发阶段暴露出来,加速开发的进程,在多人参与的大项目中也跟易于管理。

route 编译错误检测

玩得(Playing) 更爽Playing Nicely

Play 1.x 通过 Play 特有的运行环境来实现一些技术,例如 Java类属性以及类的热加载。在 Play 2.0 中我们采用更加标准的方法做运行时的发布,使得使用 Scala 编写核心框架并在 SBT 上构建变得可能。

Play 2.0 提供一个跟 Play 1.x 一样简单的 “play new, run, start” 体验,同时具有跟具可扩展性的基础框架。Play 2.0 提供一个预先配置的构建脚本,使得 1.x 的大多数项目无需修改就可以在 2.0 中运行。但如果你希望修改应用程序的构建和发布,你需要根据需要来定制适配器。

Pick and Choose

在最近几年,Web 应用技术发展非常迅速,Play 2.0 提供了一个很先进的架构可以让你非常灵活的进行功能定制。例如你不想使用数据库,那么你可以禁用 DBPlugin 插件;想使用你自己的模板引擎,没问题,用插件。你完全可以根据你的需要来决定 Play 提供的功能。

在 conf/application.conf 中禁用插件

透过 Akka 实现灵活的伸缩性

Play 基于一个轻量级、无状态、Web友好的架构,其特点就是可预测以及最小的资源消耗(包括 CPU、内存和线程),特别适合用来开发高可伸缩性的应用程序。这里部分要感谢 Akka 2.0。 Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。

在本例中,你可看到 Calculator actor 映射到 Play 的非阻塞方式

上面你可看到 ChatRoomActor 使用 Comet 发送消息

高级 I/O 和流处理

Web 开发一项非常重要的技术就是“推”和非堵塞技术。Play 2.0 使用一个 Iteratee IO 实现用于实现对“推”和非堵塞支持,以及使用内置的 WebSocket 和 Comet 来进行进行文件流处理。

一个 Scala 控制器使用了内置的 WebSockets 支持

   
次浏览       
相关文章

Java微服务新生代之Nacos
深入理解Java中的容器
Java容器详解
Java代码质量检查工具及使用案例
相关文档

Java性能优化
Spring框架
SSM框架简单简绍
从零开始学java编程经典
相关课程

高性能Java编程与系统性能优化
JavaEE架构、 设计模式及性能调优
Java编程基础到应用开发
JAVA虚拟机原理剖析
最新活动计划
LLM大模型应用与项目构建 12-26[特惠]
QT应用开发 11-21[线上]
C++高级编程 11-27[北京]
业务建模&领域驱动设计 11-15[北京]
用户研究与用户建模 11-21[北京]
SysML和EA进行系统设计建模 11-28[北京]

Java 中的中文编码问题
Java基础知识的三十个经典问答
玩转 Java Web 应用开发
使用Spring更好地处理Struts
用Eclipse开发iPhone Web应用
插件系统框架分析
更多...   

Struts+Spring+Hibernate
基于J2EE的Web 2.0应用开发
J2EE设计模式和性能调优
Java EE 5企业级架构设计
Java单元测试方法与技术
Java编程方法与技术

Struts+Spring+Hibernate/EJB+性能优化
华夏基金 ActiveMQ 原理与管理
某民航公司 Java基础编程到应用开发
某风电公司 Java 应用开发平台与迁移
日照港 J2EE应用开发技术框架与实践
某跨国公司 工作流管理JBPM
东方航空公司 高级J2EE及其前沿技术
更多...