Webx学习笔记(一)

本文详细解析了Webx框架的核心组件及层次化设计思想,包括其基于JavaServletAPI的特性、功能局限性以及如何通过SpringExt、WebxFramework、WebxTurbine三层结构进行模块化设计。文章还介绍了Webx框架如何促进层次化模块设计,以及如何灵活地使用各个层次以适应不同的开发需求。

摘自:http://www.openwebx.org

 

Webx是一套基于Java Servlet API的通用Web框架,在阿里巴巴集团内部被广泛使用。

Webx 3.0是以springext为基础,基于“组件”思想的框架,目前缺少的功能:只支持服务端的表单验证而没有直接支持客户端的js验证,没有直接支持ajax编程,没有直接支持rest编程,没有直接支持web flow。

 

层次化的概念:

--上层定义规则,下层定义细节;

--上层是抽象的,下层是具体的;

--越上层,越稳定;越下层,越易变;

--依赖倒转,下层依赖上层,而不是上次依赖下层;

--下层扩展上层时,不需要修改到上层的任何代码和配置;

--每一层均可被替换;

--切分功能,每个组件只专心做一件事;

--分出哪些会变,哪些不会变。不变的固化在组件中,可能会变得的抽象成接口,以便扩展;

--默认值和默认扩展是值得考虑的,也容易被忽视,因为默认值和默认扩展是最安全、最常用的选择。

 

Webx鼓励层次化的模块设计,而SpringExt提供了创建和配置层次化组件的机制。

既可以使用全部的Webx框架,也可以只使用部分的Webx框架。

Webx的三个层次分别是:SpringExt、Webx Framework、Webx Turbine

1. SpringExt:基于Spring,提供扩展组件的能力,它是整个框架的基础。

2. Webx Framework:基于Servlet API,提供基础的服务,例如:初始化Spring、初始化日志、接收请求、错误处理、开发模式等。

3. Webx Turbine:基于Webx Framework,实现具体的网页功能,例如:Action处理、表单处理、模板渲染等。

 

正因为Webx的分层模式,可以使用SpringExt去搭建一个非web工程,也可以使用非Webx框架和SpringExt一起搭建web工程,当然也可以使用Webx Framework一步搭建web工程,或者在Webx的基础上自己定制Turbine

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值