ZK是一套以 AJAX/XUL/Java 为基础的网页应用程序开发框架,用于丰富网页应用程序的使用界面。最大的好处是,在设计AJAX网络应用程序时,轻松简便的操作就像设计桌面程序一样。
ZK包含了一个以AJAX为基础、事件驱动(event-driven)、高互动性的引擎,同时还提供了丰富多样、可重复使用的XUL与HTML组件,以及以
XML 为基础的使用界面设计语言 ZK User-interfaces Markup Language (ZUML)。
ZK是我用过的开发框架中非常实用、快捷的框架。他封装了很多标签,使得Web应用开发能够像Windows桌面应用程序一样可视化拖拽编程,使开发人员能够将注意力放在业务,减轻了开发人员的负担。
今天开始将通过对其源码的阅读,达到两个目的:
一、能够深度了解ZK框架的原理,内建对象,以及Java级和JavaScript级的API
二、学习基于JavaEE + Ajax的架构的设计模式
ZK开发框架的核心Jar包有如下9个:
分别创建zcommon、zhtml、zk、zkex、zkmax、zkplus、zml、zul、zweb的java工程,将个jar包源码拷贝进入各工程中。另外,将Jar包中的metainfo,web目录也一同拷贝至java工程,并和源码同一级目录。
Jar包
说明
依赖关系
Zcommon
提供了共通工具类、共通组件类库
Zcommon-el.jar
ZK
提供了ZK框架核心架构。包括ZK应用程序对象、session、reqeust、WebApplicaitonContext、Desktop、Page、事件、servlet等核心类的封装
Zcommon\ZWeb
Zul
提供了ZK框架可视化界面设计的共通组件的定义
Zcommon\ZWeb\ZK
Zweb
提供了Web的共通类库。它是关于servlet和portlets的相关工具的集合类
Zcommon
Zml
XML设备类
Zcommon\ZWeb\ZK\ZUL
Zkex
ZK核心类库的扩展以及 附加ZUL组件。包括服务器推技术,页面布
局,以及基于JFreeChar的图表引擎
Zcommon\ZWeb\ZK\ZUL
ZKMax
提供了多种客户端开发语言的支持的插件。如:
Ruby、Groovy、JavaScript、MVEL、OGNL等等。并且,提高了ZUL的执行性能。
Zcommon\ZWeb\ZK\ZUL
ZKPlus
提供了数据绑定、集成Hibernate、acegi、spring等
Zcommon\ZWeb\ZK\ZUL
调试ZK核心Jar包源码
1. 创建ZKWeb应用工程
2. 选中工程,右键选择“properties”,选中“Java EE Module
Dependencies”,在该画面中将上述9个Java工程全部选中,编译运行即可