java开发框架_ZK使用笔记二
来源:互联网 发布:windows 发送 消息 编辑:程序博客网 时间:2024/05/01 15:09
在上一个文章里,我们把项目建好了,并且已经成功运行,现在来理解下zk事件驱动(event-driven)的,基于组件(component-based)的特点
先来点理论,什么叫做基于组件,维基百科里面这么描述的:基于组件的软件工程(Component-based software engineering,简称CBSE)或基于组件的开发(Component-Based Development,简称CBD)是一种软件开发范型。它是现今软件复用理论实用化的研究热点,在组件对象模型的支持下,通过复用已有的构件,软件开发者可以“即插即用”地快速构造应用软件。这样不仅可以节省时间和经费,提高工作效率,而且可以产生更加规范、更加可靠的应用软件。
所谓事件驱动,简单地说就是你点什么按钮(即产生什么事件),电脑执行什么操作(即调用什么函数).当然事件不仅限于用户的操作.
还是用之前的例子来具体说明下
<label value="You are using: ${desktop.webApp.version}"/>
注意:zk集成了EL表达式,但是这个EL表达式的功能并不全,比如把数据库的clob字段取出来放到ZK集成的这个EL表达式里面,他就不能分辨<br />这类HTML代码,而我们用jsp提供的EL表达式就可以完美的实现换行的效果,希望ZK能在以后的版本里面修正这个BUG
这个label实现的效果是:
You are using: 3.6.2
可以看到,我们得到了当前zk的版本信息,那他是怎么调用的呢,分析这句代码:${desktop.webApp.version}
desktop的意思是桌面信息,因为ZK是基于组件的,在之前的文章里,我们知道,页面(org.zkoss.zk.ui.Page
)是一系列组件的集合,而桌面又是页面的集合,所以我们在任何调用组件的地方都可以直接通过组件得到当前桌面的信息,然后我们通过桌面就能得到application的版本信息了
这句代码,我们这样写更便于理解
${self.desktop.webApp.version}
self的含义是得到当前组件信息,也就是当前这个label,然后通过label进一步得到桌面信息
当然,我们也可以尝试在ZS文件里面写,我们先建一个index.zs文件和index.zul同一个目录下
index.zul需要导入index.zs文件:
当然,为了能够调用相应的组件,我们需要把ID给组件加上
好了,现在index.zul文件完整代码是这样:
我们在index.zs文件里面这样写
getFellow() : 得到当前组件下的子组件
spaceOwner : zk的隐含对象,得到组件的空间所有者,与self.spaceOwners
相同
我们这样写,一样也可以得到当前版本的信息,和之前的结果是一样的
在这一节,介绍了简单组件的调用方式,下一节,将介绍下ZK的树形结构
- java开发框架_ZK使用笔记二
- java开发框架_ZK使用笔记一
- ThinkPHP框架开发学习笔记(二)
- JAVA开发面试笔记(二)
- iOS开发笔记之二——XCTest单元测试框架的使用
- 黑马程序员 java集合框架笔记(二)
- (二)java框架篇笔记库(15)
- (二)java框架篇笔记库(16)
- (二)java框架篇笔记库(17)
- (二)java框架篇笔记库(18)
- (二)java框架篇笔记库(19)
- (二)java框架篇笔记库(20)
- (二)java框架篇笔记库(21)
- (二)java框架篇笔记库(22)
- (二)java框架篇笔记库(23)
- (二)java框架篇笔记库(24)
- (二)java框架篇笔记库(25)
- (二)java框架篇笔记库(26)
- 测试Windows Live Writer
- flash特效原理:螺旋效果 (3)
- 函数调用约定(知识收集)
- 高性能数据库树结构
- Log4j的基本应用
- java开发框架_ZK使用笔记二
- 【观点】我对CTO的理解 CTO要有技术魅力
- 用非静态类成员函数作为线程函数
- 一个课堂打印案例分析——《C++沉思录》第9章
- 用wine安装rtx
- JAVA远程方法调用入门指南
- linux oracle 安装
- Hadoop分布式文件系统:架构和设计要点
- 数据库优化中什么是星型转换(Star Transform)