J2EE Web开发使用Ajax技术的
核心所在
作者:Henry Yu
日期:2007-11-20
目录
最近,经常收到网友的Email,问现有的Beetle Web框架对Ajax开发支持的情况。Ajax是现在不能回避的话题了。Beetle Web框架提供了一个Ajax控制器功能模块,对Ajax提供了强而有力的支持。
事实上,纯粹讨论Ajax技术本身是没有多大意思的,因为其核心是XMLHttpRequest组件,它的使用是十分简单的。我们关心是Ajax技术的引入对现有传统J2EE Web开发方式的影响和挑战,进而论述Beetle Web框架封装Ajax的理念和机制,从而最终了解J2EE Web开发使用Ajax技术的核心所在。
先回顾一下Ajax技术引入对传统Web开发挑战:
n 开发方式模糊
传统的MVC开发方式可以说是深入民心了,Ajax引入使得传统以Html内嵌java的jsp视图“消失了”,代替的是发起请求的页面本身,而此时视图展现内容的方式,主要是Javascript操作Html。这种转变打破了传统方式易于开发、维护等的优雅特性,使得开发模糊化,复杂化。特别地,当前市场上提供了形形色色的所谓Ajax框架,它们开发模型和理念也是千变万化,各不相同。这进一步模糊了Web开发模式,使得Web开发更加复杂化。
n 系统异构性
传统模型是纯服务端编程,Model、View、Controller都是由java单一语言开发,不存在语言差异性带来的数据对象序列化问题;Ajax的引入使得View必须由Javascript语言开发,使原来纯粹服务端编程模型演变成“客户端--服务端”的异构编程模型。