[挑战MVC极限]EasyJWeb-1.0特性抢先看之一简介

[挑战MVC极限]EasyJWeb-1.0特性抢先看之一简介


  2006年,一群Java领域的大师们纷纷转向动语言,随着类似RoR这些框架的宣传及推广,我们发现动态语言确实带来了以前在Java的领域里面不曾有的思想、东西。使用传统的Java MVC框架做开发,相对于动态语言所表现出来的灵活、敏捷,感觉Java确实要笨重、麻烦、古板得多。当然,Java世界中所积蓄的能量以及各路武功流派的博大精深是动态语言无法比拟的,理智地分析起来会发现他们之间并不是完全的竞争关系,只是应用的领域及场景不同而已。
  也许你曾经有一段时间觉得写JavaEE应用变得有点笨重、困难,我想那不是java的错。人民大会堂里面国宴的烹饪工序,肯定比大街上卖的鸡蛋饼要复杂得多。如果你在两三年来一直使用Struts来编写笨重、复杂的java web应用程序,那我不得不想问一句:你为什么不尝试一些Java开源界里面的其它一些新的技术框架呢?为什么Java Web应用就不能像RoR那样快速、灵活呢?为什么Rails能借鉴java的那么多优秀思想,而java就不能借鉴RoR的一些新的思想及方法呢?我们正在寻找这些问题答案的路上。
  最近一直忙于EasyJWeb的完善及改进工作,另外还忙于一些技术以外的琐事。作为一个旨在让Java Web应用开发变得真正快速、简单的MVC框架,作为一个由全国是中国人自己开发的开源框架。在EasyJWeb的正式版本即将发布之即,特总结了一下EasyJWeb1.0版本中引入的一些新特性及思想,欢迎大家参与进来讨论。
EasyJWeb-1.0还未正式发布,你可以通过SVN库来取到最新的源码及示例,SVN库位于:http://svn.easyjf.com/repository/easyjf/easyjweb/trunk

EasyJWeb简介
  EasyJWeb是基于java技术,用于企业级Java Web应用程序快速开发的MVC框架。框架设计构思来源于国内众多项目实践,框架的设计及实现借鉴当前主要流行的开源Web框架,如Rails、Struts、JSF、Tapestry等,吸取其优点及精华,是一个完全由来自的中国开源爱好者开发,文档及注释全部为中文的开源框架。
 
  EasyJWeb由主要由四个部分组成:
  1、核心MVC。EasyJWeb的核心是一个基于模板技术实现的MVC框架;他能让我们用非常简洁的代码写基于Java的Web应用。
  2、容器及通用业务逻辑封装。作为一个旨在让基于Java的Web应用程序开发变得直接、快速、简易的框架,EasyJWeb提供了一个IoC容器,并对企业级应用中的一些通用业务逻辑(如分页、查询、DAO等)进行了抽象及封装,提供了一套可以直接操作、应用企业资源的组件及API。
  3、代码生成引擎及工具。仅仅依靠一个灵活、简易的MVC核心引擎还不能最大限度的提高开发速度,因此EasyJWeb还提供了一个灵活、易用的代码生成引擎及工具,通过使用代码生成引擎,可以快速完成基于JavaEE平台的企业级应用程序生成。如数据库添删改查(CRUD)代码生成、自动页面模版生成、自动配置文件管理等。
  4、EasyJWeb插件体系,项目中的各种实用功能的扩展,可以灵活地通过基于插件的形式安装到EasyJWeb中,提供各种针对性的功能。如ajax实用插件、代码生成插件等。
 
  EasyJWeb的特点:
  1、快速开发支持
  EasyJWeb是首要目标是实现基于JavaEE的Web应用程序快速开发。通过EasyJWeb的核心MVC、通用业务逻辑抽象及封装、代码自动生成、插件体系等几个部分有机组合,能实现企业级的Java Web应用程序开发。
  2、零配置及约定配置
  通过配置可以让程序变得更加的灵活、易维护及扩展,然而配置的滥用会造成维护配置文件过于麻烦。因此,EasyJWeb基于尽可能简化配置的原则,实现了零配置支持,同时为了保证系统的灵活性及可扩展性,还提供了很多的约定配置支持。
  3、优雅的视图支持,页面及程序完全分离。
  EasyJWeb提供了非常优雅的视图支持能力,不但实现了视图页面模板与程序逻辑的完全分离,克服了传统jsp页面难于维护的问题,而且还实现了对页面纯天然的支持能力,使得非常适用于企业级应用中的页面制作人员与程序的分工合作。
  4、超级IoC容器
  作为一个主要用于Java企业级应用程序开发的框架,EasyJWeb实现了IoC容器,提供非常灵活的注入方式,并能支持Spring、Guice等异构容器实现。
  5、Ajax支持
  EasyJWeb内置了对远程javascript脚本调用功能,可以使用javascript直接访问服务端的业务组件。另外EasyJWeb通过使用prototype.js及其它一些来自开源社区ajax特效工具,提供了丰富的Ajax支持。

你可能感兴趣的:([挑战MVC极限]EasyJWeb-1.0特性抢先看之一简介)