WEB4J是个极度简化、特色十足、一站式的Java Web框架。WEB4J框架的创建者John O'Hanley说到:WEB4J在提升Java开发生产力的同时又消除了各种痛苦,因为其非常精简且能显著地加快应用开发的速度。
根据其站点上的说明,WEB4J具有如下特性:
- 拥抱约定优于配置(类似于Rails)
- 数据为王,而不是代码
- 不会强迫开发者穿新鞋走老路
- 不依赖于JavaScript、客户化的XML和注解以及对象关系映射
- 不会对你所编写的类施加线程安全的约束
- 可以用普通的HTML编写表单
WEB4J最吸引人的一个地方就是它可以将SQL放到纯文本文件中且游离于代码之外,之后就可以在代码中通过特殊的对象引用这些SQL,这样DAO类就变得非常紧凑了。
WEB4J个头很小,一共才88个类,而Rails中却有346个类、Struts中有720个类、Spring中有2400多个类。John说WEB4J的学习要比其他框架容易的多。
其站点对WEB4J的薄弱之处也毫不掩饰:
- 没有用户界面widgets库
- 未提供对AJAX、Web Services及依赖注入的内置支持
- 支持JSP/JSTL,但却没有像Velocity那样的标记库
- 对之前版本的兼容性还有些问题
去年YouTube上有个挺逗的视频谈到了WEB4J框架。该视频说的是有两个程序员发现了WEB4J框架后就用其进行开发,从而摆脱了传统的J2EE项目所遇到的诸多痛苦。
WEB4J是开源的,基于BSD协议,同时在其分发包中含有一个示例项目。