1、先去ZK官网注册一个账号

2、在MyEclipse菜单栏中Help----Eclipse Marketplace中搜索ZK Studio,点击install安装即可
     
 
3、相关类库
bsh.jar:BeanShell Java代码解析器
commons-el.jar:Apache的表达式语言(EL)解析器类库
commons-fileupload.jar:Apache的文件上传类库
commons-io.jar:Apache的I/O流处理类库(和文件上传包一起使用)
dojoz.jar:Dojo Ajax工具箱——相关的组件
fakez.jar:FCKeditor HTML编辑器——相关的组件
gmapsz.jar:Google地图——相关的组件
zcommon.jar:ZK的通用类库
zhtml.jar:XTHML——相关的组件
zk.jar:ZK内核代码
zkplus.jar:Acegi Security,Spring,Hibernate和数据库绑定的继承代码
zul.jar:XUL——相关的组建
zweb.jar:Web——相关的实用代码
 
4、配置web.xml
<listener>
<display-name>ZK Session cleaner</javaee:display-name>
<listener-class>org.zkoss.zk.ui.http.HttpSessionListener</javaee:listener-class>
</listener> <servlet>
<servlet-name>zkLoader</servlet-name>
<servlet-class>org.zkoss.zk.ui.http.DHtmlLayoutServlet</servlet-class>
<init-param>
<param-name>update-uri</javaee:param-name>
<param-value>/zkau</javaee:param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet> <servlet>
<servlet-name>auEngine</servlet-name>
<servlet-class>org.zkoss.zk.au.http.DHtmlUpdateServlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>zkLoader</servlet-name>
<url-pattern>*.zul</url-pattern>
</servlet-mapping> <servlet-mapping>
<servlet-name>zkLoader</servlet-name>
<url-pattern>*.zhtml</url-pattern>
</servlet-mapping> <!-- richlet的可选配置 -->
<servlet-mapping>
<servlet-name>zkLoader</servlet-name>
<url-pattern>/zk/*</url-pattern>
</servlet-mapping> <servlet-mapping>
<servlet-name>auEngine</servlet-name>
<url-pattern>/zkau/*</url-pattern>
</servlet-mapping>

两个Servlet是DHtmlLayoutServlet和DHtmlUpdateServlet。其中DHtml layout servlet命名为zkLoader,它负责加载ZUMLy页面。同时,当servlet容器接受到来自浏览器请求时,会根据页面的定义创建这些组件。DHtml update servlet被命名为auEngine,它负责处理ZK的事件请求(一个基于Ajax的XMLHttpRequest)。zkLoader的update-uri必须和auEngine的uri-pattern保持一致,否则web应用不能正常运行。

    除了使用ZMUL来构建zk web外,还可以使用richlet来构建纯Java的Web应用。每一个richlet都是一个晓得java程序,负责创建所有需要的组件去响应用户的请求。
 
5、配置zk.xml
<!-- 可选配置 -->
<!--
你可以定义如下任何数量的richlet
注意:要使用一个richlet,必须在web.xml中映射zkLoader到/xx/*,这个xx可以是任何吗,名字,
并且最终的URL应该是/xx/richlet-url.
-->
<richlet>
<richlet-class>org.zkoss.zkdemo.test.TestRichlet</richlet-class>
<richlet-url>/test</richlet-url>
<!-- 任意多个初始化参数
<init-param>
<param-name>any</param-name>
<param-value>any</param-value>
</init-param>
-->
</richlet>
<!-- 可选配置 -->
<session-config>
<!-- 一个空URL将导致浏览器重新加载同样的URL -->
<timeout-uri>/timeout.zul</timeout-uri>
</session-config>
<!-- 可选配置 -->
<listener>
<listener-class>org.zkoss.zk.ui.util.Statisic</listener-class>
</listener>

  richlet必须和web.xml文件中所定义的richlet URL pattern 一同工作,用来决定哪个richlet类处理特定的URL pattern的请求。比如http://localhost:8080/zkdemo-all/test这个URL的请求应该由指定的org.zkoss.zkdemo.test.TestRichlet类来进行处理。

       session-config为ZK Web应用定义了回话属性。其中timeout-url是一个子属性,它定义了一个web页面在绘画超时后的响应。如果这个属性值保留空白,那么浏览器重新加载同样的URL。
      监听器被用来配置可选的自定义回调监听器类,这个类需要使用Java来编写,而且它是由开发人员自己实现的。Statistic这个Java来将负责收集页面读/写操作统计工作。
 
 
 
 

ZK框架笔记2、ZK框架安装、相关类库、web及zk配置的更多相关文章

  1. [Java] SSH框架笔记_SSH三大框架的工作原理及流程

    Hibernate工作原理及为什么要用? 原理:1.通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件2.由hibernate.cfg.x ...

  2. STM32学习笔记 —— 0.1 Keil5安装和DAP仿真下载器配置的相关问题与注意事项

    Keil5安装的注意事项 安装细节在此不再做过多赘述,主要介绍一下注意事项: 安装路径中不能有中文. ARM的Keil的路径不能与51的Keil的有冲突,必须将目录分开. Keil5中不会自动添加芯片 ...

  3. ZK框架笔记1、ZK Ajax框架简介

    简介    ZK是一个基于事件驱动和组件的框架,他为web应用提供了丰富的接口.zk包括一个基于Ajax的事件驱动引擎.一整套丰富的XML用户接口语言(XML User Interface Langu ...

  4. hadoop 学习笔记:mapreduce框架详解

    开始聊mapreduce,mapreduce是hadoop的计算框架,我学hadoop是从hive开始入手,再到hdfs,当我学习hdfs时候,就感觉到hdfs和mapreduce关系的紧密.这个可能 ...

  5. Hadoop学习笔记:MapReduce框架详解

    开始聊mapreduce,mapreduce是hadoop的计算框架,我学hadoop是从hive开始入手,再到hdfs,当我学习hdfs时候,就感觉到hdfs和mapreduce关系的紧密.这个可能 ...

  6. 【Big Data - Hadoop - MapReduce】hadoop 学习笔记:MapReduce框架详解

    开始聊MapReduce,MapReduce是Hadoop的计算框架,我学Hadoop是从Hive开始入手,再到hdfs,当我学习hdfs时候,就感觉到hdfs和mapreduce关系的紧密.这个可能 ...

  7. Python学习笔记_04:Django框架简介

    目录 1 什么是Django? 2 Django框架的开发环境搭建 3 Django操作MySql数据库简介 4 功能强大的Django管理工具应用 1 什么是Django? Django是应用于We ...

  8. python单元测试框架笔记

    目录 单元测试概述 什么是单元测试 单元测试什么进行? 单元测试由谁负责? 单元测试需要注意 单元测试覆盖类型 python 单元测试框架 unittest pytest 测试框架 单元测试概述 什么 ...

  9. Android 学习笔记之AndBase框架学习(七) SlidingMenu滑动菜单的实现

    PS:努力的往前飞..再累也无所谓.. 学习内容: 1.使用SlidingMenu实现滑动菜单..   SlidingMenu滑动菜单..滑动菜单在绝大多数app中也是存在的..非常的实用..Gith ...

随机推荐

  1. You are my brother NBUT - 1218

    问题描述 Little A gets to know a new friend, Little B, recently. One day, they realize that they are fam ...

  2. 【SPOJ Query on a tree 】 (树链剖分)

    http://acm.hust.edu.cn/vjudge/problem/13013 题意: 有一棵N个节点的树(1<=N<=10000),N-1条边,边的编号为1~N-1,每条边有一个 ...

  3. [NOI 2011][BZOJ 2434] 阿狸的打字机

    传送门 AC自动机 + 树状数组 建成AC自动机后,设end[i]为第i个串的末尾在Trie树上的节点. 可以发现,对于一个询问(x,y),ans等于Trie树上root到end[y]这条链上fail ...

  4. 【模拟退火】poj2069 Super Star

    题意:让你求空间内n个点的最小覆盖球. 模拟退火随机走的时候主要有这几种走法:①随机旋转角度. ②直接不随机,往最远的点的方向走,仅仅在尝试接受解的时候用概率.(最小圆/球覆盖时常用) ③往所有点的方 ...

  5. 【tarjan+缩点】POJ1236[IOI1996]-Network of Schools

    [题意] 见:http://blog.csdn.net/ascii991/article/details/7466278 [思路] 缩点+tarjan,思路也可以到上面的博客去看.(吐槽:这道题其实我 ...

  6. NHibernate 操作视图 第十三篇

    在NHibernate中,可以把视图当表一样操作,只需要记住一点就是,视图是只读的,因此映射实体的setter应该改为protected. 新建一个视图如下: 持久化类: public class C ...

  7. 用JSP生成HTM网页,减轻数据库操作

    原文:http://www.jspkongjian.net/news.jsp?id=396 此教程的功能: 利用servlet 实现抓取一个网页,把这个网页保存为.htm  比如抓取我们的主页inde ...

  8. appium+python自动化48-长按(long_press)

    前言 长按操作是经常会遇到的场景,通过driver可以直接调出long_press_keycode方法,但是这个方法是长按手机上某个按钮,比如长按电源键,长按home键. 长按某个元素或者长按屏幕上某 ...

  9. [转]CodeSmith 基础教程

    本文转自:http://www.cnblogs.com/sorex/archive/2009/12/24/1631533.html 〇.            前言 最近两天自己写了个简单的ORM框架 ...

  10. 完美解决“find: 路径必须在表达式之前:”

    使用find命令查找文件的时候会有如题的提示,只需略作修改即可.两种方法: ①可cd到其它目录再查找(当前目录下存在要查找的目标文件时会出现此类错误,换到其它目录下再执行相同的命令即可): ②如果目标 ...