- 浏览: 1149692 次
- 性别:
- 来自: 火星郊区
博客专栏
-
OSGi
浏览量:0
文章分类
- 全部博客 (695)
- 项目管理 (48)
- OSGi (122)
- java (79)
- Vaadin (5)
- RAP (47)
- mysql (40)
- Maven (22)
- SVN (8)
- 孔雀鱼 (10)
- hibernate (9)
- spring (10)
- css (3)
- 年审 (6)
- ant (1)
- jdbc (3)
- FusionCharts (2)
- struts (4)
- 决策分析 (2)
- 生活 (10)
- 架构设计 (5)
- 破解 (2)
- 狼文化 (4)
- JVM (14)
- J2EE (1)
- 应用服务器 (1)
- 我的链接 (5)
- 数学 (2)
- 报表 (1)
- 百科 (6)
- Flex (7)
- log4j (2)
- PHP (1)
- 系统 (2)
- Web前端 (7)
- linux (6)
- Office (1)
- 安全管理 (5)
- python (2)
- dom4j (1)
- 工作流 (3)
- 养生保健 (4)
- Eclipse (8)
- 监控开发 (1)
- 设计 (3)
- CAS (1)
- ZK (41)
- BluePrint (3)
- 工具 (1)
- SWT (7)
- google (2)
- NIO (1)
- 企业文化 (2)
- Windoes (0)
- RCP (7)
- JavaScript (10)
- UML (1)
- 产品经理 (2)
- Velocity (10)
- C (1)
- 单元测试 (1)
- 设计模式 (2)
- 系统分析师 (2)
- 架构 (4)
- 面试 (2)
- 代码走查 (1)
- MongoDB (1)
- 企业流程优化 (1)
- 模式 (1)
- EJB (1)
- Jetty (1)
- Git (13)
- IPV6 (1)
- JQuery (8)
- SSH (1)
- mybatis (10)
- SiteMesh (2)
- JSTL (1)
- veloctiy (1)
- Spring MVC (1)
- struts2 (3)
- Servlet (1)
- 权限管理 (1)
- Java Mina (1)
- java 系统信息 (6)
- OSGi 基础 (3)
- html (1)
- spring--security (6)
- HTML5 (1)
- java爬虫搜索 (1)
- mvc (3)
最新评论
-
Tom.X:
http://osgia.com/
将web容器置于OSGi框架下进行web应用的开发 -
chenyuguxing:
你好, 为什么我的bundle export到felix工程中 ...
在Apache Felix中运行bundle -
string2020:
<niceManifest>true</ni ...
Bundle Plugin for Maven -
jsonmong:
OSGI,是未来的主流,目前已相当成熟。应用OSGI比较好的, ...
基于OSGi的声明式服务 -
zyhui98:
貌似是翻译过来的,有很少人在linux上做开发吧
如何成为“10倍效率”开发者
1,页面
- <?xml version="1.0" encoding="utf-8"?>
- <?page id="indexPage" title="" id="indexPage" cacheable="false" language="xul/html" zscriptLanguage="Java" contentType="text/html;charset=UTF-8"?>
- <?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" ?>
- <?taglib uri="http://www.zkoss.org/zktools/zktools" prefix="z"?>
- <?link rel="stylesheet" href="/css/global.css" type="text/css" media="screen" ?>
- <window xmlns:w="client" xmlns:n="native" xmlns="http://www.zkoss.org/2005/zul"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul/zul.xsd"
- apply="${z:ctrl('indexController')}">
- 浏览目录
- <textbox id="txtRoot"></textbox><button forward="onLoadFiles" label="Browse..."></button>
- <tree id="treeDir">
- </tree>
- </window>
<?xml version="1.0" encoding="utf-8"?> <?page id="indexPage" title="" id="indexPage" cacheable="false" language="xul/html" zscriptLanguage="Java" contentType="text/html;charset=UTF-8"?> <?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" ?> <?taglib uri="http://www.zkoss.org/zktools/zktools" prefix="z"?> <?link rel="stylesheet" href="/css/global.css" type="text/css" media="screen" ?> <window xmlns:w="client" xmlns:n="native" xmlns="http://www.zkoss.org/2005/zul" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul/zul.xsd" apply="${z:ctrl('indexController')}"> 浏览目录 <textbox id="txtRoot"></textbox><button forward="onLoadFiles" label="Browse..."></button> <tree id="treeDir"> </tree> </window>
2,java代码,关于spring controller自动注册注解zk+hibernate+spring零配置
- import java.io.File;
- import org.apache.commons.lang.StringUtils;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import org.zkoss.zk.ui.event.Event;
- import org.zkoss.zk.ui.event.EventListener;
- import org.zkoss.zk.ui.event.Events;
- import org.zkoss.zk.ui.util.GenericAutowireComposer;
- import org.zkoss.zul.Treeitem;
- import org.zkoss.zul.api.Textbox;
- import org.zkoss.zul.api.Tree;
- import org.zkoss.zul.api.Treechildren;
- import com.sun4love.common.web.zk.ZkUtils;
- @Controller
- @Scope("prototype")
- public class IndexController extends GenericAutowireComposer {
- private static final long serialVersionUID = 5909684044186358102L;
- private Textbox txtRoot;
- private Tree treeDir;
- public void onLoadFiles() {
- String root = txtRoot.getText();
- File file = new File(root);
- if (!file.exists() || file.isFile()) {
- ZkUtils.showExclamation(String.format("%s不存在或不是一个目录", root), "提示");
- return;
- }
- if (treeDir.getTreechildrenApi() == null) {
- new org.zkoss.zul.Treechildren().setParent(treeDir);
- }
- createTreeitem(file, treeDir.getTreechildrenApi());
- }
- private void createTreeitem(final File file, Treechildren tc) {
- String fileName = StringUtils.isBlank(file.getName()) ? file
- .getAbsolutePath() : file.getName();
- final Treeitem treeitem = new Treeitem(fileName, file);
- if (file.isDirectory()) {
- treeitem.setImage("/images/ClosedFolder.gif");
- treeitem.addEventListener(Events.ON_CLICK, new EventListener() {
- public void onEvent(Event evt) throws Exception {
- try {
- File[] fs = file.listFiles();
- if (fs == null) {
- return;
- }
- if (!createTreechildren(treeitem)) {
- return;
- }
- for (File f : fs) {
- createTreeitem(f, treeitem.getTreechildren());
- }
- } catch (Exception e) {
- ZkUtils.showExclamation("无访问目录权限", "提示");
- }
- }
- });
- } else {
- treeitem.setImage("/images/file_16x16.gif");
- }
- treeitem.setParent(tc);
- }
- private boolean createTreechildren(Treeitem item) {
- if (item.getTreechildrenApi() == null) {
- new org.zkoss.zul.Treechildren().setParent(item);
- return true;
- } else {
- return false;
- }
- }
- }
import java.io.File; import org.apache.commons.lang.StringUtils; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.util.GenericAutowireComposer; import org.zkoss.zul.Treeitem; import org.zkoss.zul.api.Textbox; import org.zkoss.zul.api.Tree; import org.zkoss.zul.api.Treechildren; import com.sun4love.common.web.zk.ZkUtils; @Controller @Scope("prototype") public class IndexController extends GenericAutowireComposer { private static final long serialVersionUID = 5909684044186358102L; private Textbox txtRoot; private Tree treeDir; public void onLoadFiles() { String root = txtRoot.getText(); File file = new File(root); if (!file.exists() || file.isFile()) { ZkUtils.showExclamation(String.format("%s不存在或不是一个目录", root), "提示"); return; } if (treeDir.getTreechildrenApi() == null) { new org.zkoss.zul.Treechildren().setParent(treeDir); } createTreeitem(file, treeDir.getTreechildrenApi()); } private void createTreeitem(final File file, Treechildren tc) { String fileName = StringUtils.isBlank(file.getName()) ? file .getAbsolutePath() : file.getName(); final Treeitem treeitem = new Treeitem(fileName, file); if (file.isDirectory()) { treeitem.setImage("/images/ClosedFolder.gif"); treeitem.addEventListener(Events.ON_CLICK, new EventListener() { public void onEvent(Event evt) throws Exception { try { File[] fs = file.listFiles(); if (fs == null) { return; } if (!createTreechildren(treeitem)) { return; } for (File f : fs) { createTreeitem(f, treeitem.getTreechildren()); } } catch (Exception e) { ZkUtils.showExclamation("无访问目录权限", "提示"); } } }); } else { treeitem.setImage("/images/file_16x16.gif"); } treeitem.setParent(tc); } private boolean createTreechildren(Treeitem item) { if (item.getTreechildrenApi() == null) { new org.zkoss.zul.Treechildren().setParent(item); return true; } else { return false; } } }
效果图
- zk浏览目录.rar (65.7 KB)
- 下载次数: 17
发表评论
-
ZK PPT
2012-02-27 17:28 1201附件中为ZK系列的PPT -
zk+spring+hibernate延迟加载的解决办法
2012-02-24 14:22 1269由于Zk 的AU request,lazy load现在没 ... -
【zk开发】zk注解的秘密
2012-02-24 14:23 1590The DataBinder that reads ZUML ... -
【zk开发】zkstudio安装及使用视屏
2012-02-26 12:04 1240安装视屏 http://docs.zkoss.org/w ... -
zk主题生成器
2012-02-26 12:04 1616生成器在附件内,兼容zk3.x 与zk5.x,zktheme ... -
zk服务器端获取鼠标点击位置
2012-02-26 12:04 1393index.zul Xml代码 ... -
zk Fiddle-zk在线测试保存代码分享平台
2012-02-23 08:20 1468http://zkfiddle.org/ 是zk项目组之一 ... -
zksample2-一个复杂应用的zk示例
2012-02-23 08:19 1481Zks ample2 is a demo applica ... -
zk5.0.8发布
2012-02-23 08:18 954该版本是一个维护版本,主要于bug修复及引入几个新特性 ... -
zk数据绑定
2012-02-23 08:17 1797简介 : 关于数据绑 ... -
zk EE/PE/CE的区别
2012-02-18 09:32 3101自从zk5.0以后,zk拆分为 ... -
ZK 5.0.8 新特性
2012-02-18 09:32 18928月16日,zk官网:zk5.0.8将要发布 zk5. ... -
zk client与server code结合提高长操作的响应性
2012-02-18 09:32 1430一,关于长操作与响应性 zk client与serve ... -
zk tooltiptext中换行
2012-02-17 11:37 1536Xml代码 <window ti ... -
zk下载文件中文乱码解决方案
2012-02-17 11:37 3668本文来自http://sun4love.iteye.com/b ... -
【zk视频】如何了解一个组件默认支持服务器端事件
2012-02-17 11:37 1308如何了解一个组件默认支持服务器端事件? 知识点:在z ... -
【zk视频】如何查看zk源码,了解zk原理
2012-02-17 11:37 1650当org.zkoss.zul.Window关闭时,zk是如 ... -
ZK 5.0.7发布,及新特性
2012-02-15 09:10 1150ZK 是一套以 AJAX/XUL/Java 为基础的网页应用 ... -
use【组件公共属性】
2012-02-15 09:09 1085语法 apply="a-class- ... -
zk异步请求异常,自定义错误页面的bug
2012-02-15 09:09 1127zk版本5.0.6 现在遇到一个问题,觉得是bug, ...
相关推荐
API Demos提供了使用JobScheduler的例子,有助于优化资源利用和电量管理。 9. **Android Pay与Wallet Framework** 如果你对集成支付功能感兴趣,API Demos包含了Android Pay的示例,展示了如何使用Wallet ...
Signal processing demos from Richards
《ApiDemos示例源码解析》 ApiDemos是Android平台提供的一款示例应用,它包含了Android SDK中的各种API功能展示,对于...因此,建议每个Android开发者都应熟悉并充分利用这个示例库,为自己的开发工作打下坚实的基础。
《深入探索Android API Demos:最新实践与技术解析》 Android API Demos是Google官方提供的一款用于展示Android SDK中各种API功能和用法的应用程序,它涵盖了从基础控件到高级特性的全方位示例,是开发者学习...
《Android ApiDemos apk:深入理解Android应用开发的实践指南》 Android ApiDemos apk是Android开发者们熟悉的一个示例程序,它包含了Android SDK中的各种API功能演示,为开发者提供了丰富的学习资源。这个应用程序...
ApiDemos 6.0
"滑页例子"可能涉及ViewPager的使用,这是一个允许用户通过水平滑动来浏览多个页面的组件。它可以用来实现如应用切换、轮播图或Tab布局等效果。开发者需要理解如何设置PagerAdapter,以及如何同步页面与指示器的状态...
在`Support4Demos`中,`Fragment`被用来创建横屏页面,每个`Fragment`代表一个屏幕内容,这样用户可以在横屏模式下流畅地滑动浏览不同的页面。 接下来,我们关注`ViewPager`。`ViewPager`是`android.support.v4....
《Android ApiDemos详解——揭示Android开发的奥秘》 Android ApiDemos是Android开发者学习和探索平台功能的重要资源库,它集成了Android SDK中的各种控件、绘图技术以及四大组件(Activity、Service、...
《Android 8.1版本ApiDemos源码详解:深入理解API使用实例》 在Android开发领域,理解和熟练运用各种API是提升技能的关键步骤。"8.1版本ApiDemos源码"为开发者提供了一个宝贵的资源,它包含了Android 8.1系统中各种...
8. **ViewPager与FragmentPagerAdapter的结合**:展示如何使用ViewPager来滑动浏览多个Fragment。 通过研究`Support4Demos`的源码,开发者不仅可以学习到如何在实际项目中应用Support Library v4,还可以掌握...
这将自动下载并解压mesa-demos的源代码,其中包括mesa-demos-8.4.0目录,其中包含了各种演示程序的源代码。这些源代码可以帮助开发者了解如何组织一个完整的OpenGL ES应用程序,包括设置上下文、加载着色器、处理...
在“flex demos”这个压缩包中,我们能看到一系列针对不同应用场景的示例,如Alarm Demos、Network Demos和Tree Demos,这些都是开发者学习Flex编程的宝贵资源。 1. **Alarm Demos**: Alarm Demos通常涉及到时间...
- **目录结构**:ApiDemos的源码通常会按照Android应用的标准结构进行组织,包括`src/main/java`(Java代码)、`res`(资源文件)、`AndroidManifest.xml`(应用清单)等。在`java`目录下,你会看到按照功能或组件...
"ant-design-demos" 是一个基于Ant Design框架的示例集合,主要展示了Ant Design的各种组件和功能在实际应用中的使用方式。Ant Design是一款由阿里集团开发的高质量React UI库,它提供了一系列美观、易用且具有企业...
DevExpress是一款知名的软件开发工具提供商,其提供的DevExpress Demos是一系列展示其控件和框架功能的实例应用。在这款17.2版本的WinForm Demo中,开发者可以深入了解和学习DevExpress的Windows Forms平台上的组件...
进入实例部分,"demos"目录下的文件很可能是各种示例代码,涵盖了Android开发中的常见功能和组件: - **活动(Activity)**:展示用户界面,例如MainActivity.java,展示了如何创建一个基本的活动。 - **布局(Layout)...
《API-Demos(7.0源码)深度解析》 API Demos是Android系统源码中的一部分,它是一个包含了各种Android API示例的项目,专为开发者设计,用于展示和学习Android系统的各种功能和API的使用。这个项目是基于Android ...
通过这些演示,开发者可以学习如何利用JavaFX API来构建复杂的UI、实现动态效果以及与其他Java技术集成。 描述中的“sun公司的旗舰产品 就不用我吹了”暗示了JavaFX曾是Sun Microsystems(后被甲骨文收购)的重要...