`
shinewang
  • 浏览: 36158 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Play! 一个Rails-like的Java框架

    博客分类:
  • Java
阅读更多
由于Java语言的局限性,实现一个Rails-like的Java开发框架一直是一个难题。在Java上想体验Rails-like的开发模式,只能选择Grails或者JRuby on Rails。然而这两种框架都是动态语言实现的框架,只是基于JVM而不是基于Java语言本身。动态语言确实有很多优点,但往往难以调试。是否有一个Java语言实现的Rails-like框架?答案是Play!

Play!是一个full-stack Java Web应用框架,包括一个简单无状态的MVC模型,Hibernate的持久性对象,基于Groovy的模板引擎,以及建立一个现代化网络应用所需的一切。注意,这里虽然使用了Groovy,但只是是作为页面模板语言,这和freemaker、velocity使用自己定义的语言是同样的道理,Groovy的成熟以及它和Java的相似性决定了采用Groovy远远好于自己定义一个语言。

Play!的主要特性:
  • 简单的开发周期。该框架可自动编译和重新装载已改变的源文件。也就是说在保存源代码的改变后,就能立刻从浏览器中看到结果,不需要重新编译、部署、重启服务器。
  • 约定优于配置。
  • 智能绑定HTTP参数到Java方法参数。
  • 无状态的模型,无共享架构(Share-Nothing Architecture),为REST做好了准备(未来的目标是RESTful架构),具有很好的伸缩性。
  • 一个基于Groovy的强大的模板引擎,可实现多层继承,定制用户标签等功能。
  • 包含了很多开发Web应用需要的功能整合,如Memcached、OpenID、插件系统等。
  • 优秀的错误报告功能:发生异常时,该框架会直接显示出错误的源代码,甚至是模板代码。
  • 纯Java,能够使用任何Java类库,能够很好的生成eclipse和netbeans项目文件。
  • 速度很快。
初步看了下文档,应该是目前最接近Rails的Java framework,整个框架和我最近设想的一个框架差不多,很多简化 Java Web开发会遇到的问题,play!都给出了一个尽可能的解决方法,比如HTTP参数绑定、属性get/set等等,局限于java语言本身,目前也只能这样了。play!目前还没有集成验证功能,也没有一些诸如HTML encode的工具库,和spring的集成也好像还在开发中,不过这些都应该很容易解决。

该项目是开源的,您可以在http://www.playframework.org上查看更多!

 

 

分享到:
评论
13 楼 daxiong921 2009-10-30  
觉得play更像是django哦
12 楼 fangzhouxing 2009-01-10  
用过Django,回到java,看到Play!真的很有感觉!
11 楼 ajf8 2009-01-01  
同学,我这个给你play play
http://www.iteye.com/topic/257804
10 楼 jiyanliang 2008-12-31  
看了这篇文章http://duker.iteye.com/blog/306082
俺退缩了。。
9 楼 Arden 2008-12-31  
目前它的模版处理能力还是不行~~~
8 楼 Arden 2008-12-30  
play! 框架的controller和model分包,及view下的html文件目录组织怎么搞?
7 楼 风花雪月饼 2008-12-27  
说实话,rails里面我唯一喜欢的就是ActiveRecord。这个框架我还没看,楼主能否大概讲下其中的对应实现是如何?
6 楼 jiyanliang 2008-12-26  
controller里面定义了一大堆的static方法,这样大量使用后将会是什么样的啊。。
5 楼 shiren1118 2008-12-26  
各自吹各自的吧


我还是比较喜欢Grails,一定会流行
4 楼 jiyanliang 2008-12-26  
着实希望各位来点评一下...
3 楼 天机老人 2008-12-26  
哇塞好东西啊,不过还不能和spring集成似乎有点烦人,不知道和Hibernate集成会不会成问题!
2 楼 Mayer 2008-12-06  
very cool.
1 楼 avaj 2008-11-20  
试了一下,非常不错的东西!!

相关推荐

    rails-dev-box, 面向 Ruby on Rails 核心开发的虚拟机.zip

    rails-dev-box, 面向 Ruby on Rails 核心开发的虚拟机 用于 Ruby on Rails 核心开发的虚拟机简介注意:这个虚拟机不是为 Rails 应用程序开发而设计的,只是为。 这个项目自动设置开发环境,以便在 Ruby on Rails ...

    JRuby和Rails-让Ruby语言融入于Java项目.rar

    Rails是Ruby的一个Web应用程序框架,以其MVC(模型-视图-控制器)架构模式和“约定优于配置”的原则而闻名。Rails提供了快速开发Web应用的工具,减少了大量样板代码,提高了开发效率。当Rails与JRuby结合时,开发者...

    rails-2.1.0-gem

    "rails-2.1.0-gem"是Rails框架的一个特定版本,即2.1.0的gem包,用于在Ruby环境中安装和管理Rails框架。 Rails的核心理念是“约定优于配置”(Convention over Configuration),这意味着开发者可以遵循一套预设的...

    rails-2.3.5.gem

    rails-2.3.5.gem redmine必须gem

    rails-chm-2-0-2.rar

    Ruby on Rails,简称Rails,是由David Heinemeier Hansson创建的一个开源Web应用程序框架,它基于MVC(模型-视图-控制器)架构模式,用于快速开发动态网站。Rails以其“约定优于配置”(Convention Over ...

    rails-documentation-2-0-2

    rails-documentation-2-0-2

    rails-documentation-1-2-1.zip

    Ruby 是一种面向对象的编程语言,而 Rails 是一个基于 Ruby 的开源 Web 应用程序框架,遵循 Model-View-Controller(MVC)架构模式。此压缩包中的 "rails-documentation-1-2-1.chm" 文件很可能是一个帮助文件或HTML...

    rails-settings-ui:用于在Rails应用程序中管理设置的用户界面(使用rails-settings gem)ИнтерфейсдляуправлениянастройкамивRailsприложении

    Rails设置界面 一个Rails Engine来管理您的应用程序设置。 包括验证。 与Rails 5兼容。它与 gem兼容。 预习: 实时示例: : 如何添加到Gemfile gem 'rails-settings-ui'然后加gem 'rails-settings-cached'要么gem '...

    rails-beginner-s-guide

    rails-beginner-s-guide是Rails 指导手册,帮组学习了解rails开发

    rails-api-4.0.0

    Rails API 4.0.0是Ruby on Rails框架的一个版本,专门针对构建应用程序接口(APIs)进行了优化。Ruby on Rails是由David Heinemeier Hansson创建的开源Web应用框架,遵循MVC(模型-视图-控制器)架构模式,以其简洁...

    rails-ftw-v0.18-2.1.5-4.1.8

    rails-ftw-v0.18-2.1.5-4.1.8.exe用于在windows环境下搭建readmine环境

    rails-react-components-源码.rar

    在现代Web开发中,Rails作为Ruby的一个强大框架,以其MVC架构和丰富的生态系统赢得了开发者们的喜爱。而React作为JavaScript库,因其高效的虚拟DOM和组件化思想,已经成为前端开发的主流选择。当Rails与React结合时...

    rails-bootstrap, 带有 Bootstrap 4前端框架的Rails 5.1 starter应用.zip

    rails-bootstrap, 带有 Bootstrap 4前端框架的Rails 5.1 starter应用 Rails 和 BootstrapRails 5.1集成 Rails 和 Bootstrap 4.0的示例应用程序。Bootstrap ( 以前 Twitter Bootstrap ) 为网站的视觉设计提供CSS样式...

    rails-4.2.0-gems

    Rails 4.2.0 是一个非常重要的版本,在Ruby on Rails框架的历史中占据了显著位置。这个版本引入了许多新特性、改进和性能优化,为开发者提供了更高效和灵活的开发环境。Ruby 4.2.0是这个框架所依赖的编程语言的一个...

    rails-development-environment-master.rar

    Rails是基于Ruby语言的一个开源Web应用框架,遵循MVC(Model-View-Controller)架构模式,广泛用于构建数据库驱动的web应用。描述中没有提供额外的信息,但我们可以根据标签“源码”推测,这个压缩包可能包含了Rails...

    ember-cli-rails-源码.rar

    Ember CLI Rails是一个集成Ember.js应用到Rails项目的框架,它允许开发者在Rails环境中无缝地使用Ember CLI。源码分析将深入理解这个框架的工作原理和核心组件。 1. **Ember CLI简介** Ember CLI是Ember.js的...

    rails-yelp-mvp-源码.rar

    【标题】"rails-yelp-mvp-源码" 指的是一个基于Rails框架开发的类似于Yelp(美国知名餐饮评论网站)的最小可行产品(Minimum Viable Product, MVP)的源代码。Rails是Ruby编程语言的一个流行Web开发框架,以其“约定...

    rails-2.3.8.gem

    版本为:rails-2.3.8.gem 可使用指令安装:gem install rails-2.3.8.gem

    rails-playlists-源码.rar

    Rails是一款基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,被广泛用于构建动态网站和Web应用。"rails-playlists-源码"很可能是某个开发者或团队分享的关于音乐播放列表管理功能的...

Global site tag (gtag.js) - Google Analytics