zk框架哪位前辈用过进来谈谈

xianaofei 2009-08-19 01:57:30
zk框架哪位前辈有相关资料的啊,能谈谈体会不。现在刚学很迷茫啊 O(∩_∩)O哈哈~
...全文
105 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xianaofei 2009-08-20
  • 打赏
  • 举报
回复
能不能来点实在的 咋说的都是理论啊
xiaozejun 2009-08-19
  • 打赏
  • 举报
回复
ZK采用AJAX机制用来实现自动的交互,并定义了基于XUL丰富的组件和标记语言。


基于AJAX的机制包括三个部分,分别为:ZK 加载器(ZK loader),ZK AU引擎(ZK AU Engine ),和ZK客户端引擎(ZK Client Engine)。


ZK 加载器(ZK loader):当应用启动时,加载器已经启动,当客户端发送URL请求时,加载器解释请求。


ZK客户端引擎(ZK Client Engine):是由JavaScript语言编写的。浏览器缓存ZK客户端引擎,所以通常仅需在首次读取时设置引擎。ZK Client Engine的主要职责有:当客户触发事件时,ZK Client Engine捕捉客户端事件,将事件封装然后放入客户端事件队列(封装后的请求是一个特定格式的字符串),发送队列中的事件到服务器;当接收到服务器端的响应时,接收响应信息并解析信息(此信息为一个XML格式的串),根据解析后的数据刷新页面。


ZK AU引擎(ZK AU Engine ):运行在服务器端,当服务器接收到客户端发送的请求(字符串),然后解析此请求,根据请求做后台处理(包括model更新,响应信息组装)。


基于用户的请求,ZK 加载器(ZK loader)加载一个ZK页面,解释它,并将结果送到HTML页面来响应URI请求。ZK页面是用一种被称为ZUML的标记语言写成的。ZUML,就像HTML,被用来描述什么组件被创建,以及如何把它们呈现出来。这些组件一旦被创建,就会一直处于可用状态直到会话超时。


然后ZK AU引擎(ZK AU Engine )和ZK客户端引擎(ZK Client Engine)作为投手和捕手一起工作。它们将在浏览器端发生的事件送到运行在服务器端的应用程序,然后更新浏览器段的DOM树,基于组件如何被应用程序操纵。这种方式即所谓的事件驱动编程模型。


执行流
当用户在浏览器中键入一个URL或点击一个超链接时,一个请求便被送到了Web服务器,如果URI符合ZK的配置,ZK 加载器开始发挥作用 。
ZK 加载器(ZK loader)加载指定的页面然后解释它,以据此创建合适的组件。
当解释完整个页面后,ZK 加载器(ZK loader)将结果送到一个HTML页面。然后这个HTML页面被送回浏览器和ZK客户端引擎(ZK Client Engine)一起。
ZK客户端引擎(ZK Client Engine)位于浏览器,以监视由客户的活动触发的事件,例如挪动鼠标,或改变某个值。一旦监测到,它就通知ZK AU引擎通过发送一个ZK请求。
当从客户端引擎接到ZK请求后,如果有需要的话AU引擎就更新相应组件的内容。然后,AU引擎通过调用相关的事件处理程序(如果有的话)来通知应用程序。
如果应用程序选择改变组件的内容,添加或移动组件,AU引擎通过ZK响应(ZK responses)将更新后组件的新内容送至客户端引擎。
这些ZK响应实际上是一些命令,这些命令指示客户端引擎如何更新DOM树的内容。
ruisheng_412 2009-08-19
  • 打赏
  • 举报
回复
zk是一个ajax框架,里面的全部组件都是用java实现的,用zk编写显示层和桌面程序差不多。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧