`
alartin
  • 浏览: 209851 次
社区版块
存档分类
最新评论

Netbeans平台的API: 数据系统(Datasystem API)

阅读更多
Netbeans平台的数据系统是文件系统和面向文件操作之间的逻辑层,提供在文件对象(file object)之上的工作API,能够文件的逻辑处理:图标,名字,操作等等。例如Netbeans如何识别HTML文件,XML文件,Java源文件等,对于不同的文件/数据类型,Netbeans会以不同的方式处理,例如可以对Java源文件编译,可以对XML文件提供折叠显示等。Netbeans通过数据加载器DataLoader实现这个功能的, 基本流程是系统加载池 System Data Loader Pool负责扫描磁盘上的目录,过滤掉不相关的文件,然后依次询问在系统注册了的数据加载器是否对这个文件类型进行处理。第一个遇到的匹配的加载器负责处理该文件类型,它将为这个文件类型创建一个匹配的数据对象Data Ob ject,这个数据对象在Netbeans中负责这个文件类型。通过数据加载器,你能够将一些不同类型的文件聚集在一起形成组。例如可视化Swing可以识别app1.java, app1.form, app1.class将他们视为一组文件,这组文件能够共享一个数据对象,并且共享一组动作。在查看器窗口中,为这个数据对象只创建一个主节点。对于用户来说,他们只看到一个节点,因此不会将这些相关的文件隔离开,分别对待。而不相关的文件,例如测试输出文件,备份文件等,将不被考虑,直接滤除。

注意,在Netbeans中,数据对象要比文件对象高一层次,而数据系统高于文件系统(这通常和我们的直觉相反)。因此,数据对象能够拥有一些文件对象没有的行为。这些行为是通过Cookie提供的(这里的Cookie和Web中的Cookie概念不同)。这样,数据对象能够通过拥有一个Cookie,从而和一个打开的编辑器相关联,或者数据对象能够作为一个模版供别人使用等等,或者当更名或者移除时进行一系列特定操作。通过数据加载器能够实现特定的伪文件,例如DataShadows.

数据系统API包括三个包:
  1. org.openide.loaders 负责处理文件,将他们关联到组,然后设置数据类型
  2. org.openide.cookies 提供了一种设计模式,能够对数据对象和节点提供附加的行为
  3. org.openide.util.datatransfer 实现了一些剪切版的扩展
 
 
分享到:
评论

相关推荐

    Apache_Mahout_Cookbook(高清版)

    Apache Mahout是一个高度可扩展的机器学习库,主要用于构建智能推荐系统、聚类分析以及其他数据挖掘任务。该库利用了Apache Hadoop的强大分布式计算能力,使得处理大规模数据集变得高效可行。 #### 二、安装与配置 ...

    The Definitive Guide to NetBeans Platform

    ■CHAPTER 3 The Module System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 ■CHAPTER 4 Actions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...

    NetBeans连接SQL-server-2008教程.docx

    本教程主要介绍如何使用NetBeans IDE连接到SQL Server 2008数据库。NetBeans是一款开源的集成开发环境,支持多种编程语言,包括Java。在本文中,我们将详细讲解每一步操作,帮助初学者顺利建立连接。 首先,你需要...

    java面试题2012

    **CMS(Content Management System, 内容管理系统)**是一种用于管理和发布数字内容的应用系统,广泛应用于网站建设和维护。虽然与Java开发直接关联不大,但对于了解整个软件开发生态系统而言,了解CMS系统的基本概念...

    Windouws 64 位Tomcat7.0.40 + 64位jdk1.7.0u21 绿色版.part1

    Windouws 64 位Tomcat7.0.40 + 64位jdk1.7.0u21 绿色版 part1 纯绿色,官方下载,绝对可用~ 欢迎评论吐槽~ 文件 PATH 列表 │ LICENSE │ NOTICE │ RELEASE-NOTES │ RUNNING.txt │ ...│ bootstrap.jar ...

    J2ME——all

    4. **Data Persistence**:MIDP通过Record Management System (RMS)提供数据持久化机制。 5. **Network Access**:MIDP允许应用程序通过HTTP和TCP/IP协议访问网络资源。 ### 四、J2ME游戏开发 1. **Game Loop**:...

    Java+英语词汇表.doc

    #### Data Management System (DBMS) **概念解析:** DBMS(数据库管理系统)是一种软件系统,用于管理数据库中的数据。它提供了创建、维护和访问数据的方式。 #### Declaration (声明) **概念解析:** 声明是指在...

    j2me开发大全

    Java 2 Micro Edition(J2ME)是Java平台的一个子集,主要用于嵌入式系统和移动设备,如手机、PDA和智能家电等。J2ME为开发这些设备上的应用程序提供了丰富的框架和工具。在"J2ME开发大全"中,我们可以深入探讨以下...

    java写的 文件MD5码计算工具 及源码

    总的来说,这个Java编写的MD5码计算工具是软件开发和系统管理中的实用小工具,它可以快速检查文件的完整性,确保数据传输无误。对于开发者来说,了解并掌握如何使用和实现这样的工具,有助于提升日常工作效率。同时...

    J2ME手机电话本实例

    Java 2 Micro Edition(J2ME)是一种轻量级的Java平台,主要用于移动设备、嵌入式系统和其他有限资源的设备上。本实例将探讨如何使用J2ME技术来开发一个简单的手机电话本应用,这对于我们理解移动设备上的程序开发...

    apktool documentation

    On some devices they might reside in /data/system-framework and even cleverly hidden in /system/app or /system/priv-app. They are usually named with the naming of "resources", "res" or "framework". ...

    Java 7 Concurrency Cookbook

    your operating system allows the concurrency of tasks. Concurrent programming is about the elements and mechanisms a platform offers to have multiple tasks or programs running at once and communicate ...

    javacv-platform-1.3.3-src

    NetBeans (Java SE 7 or newer): In the Projects window, right-click the Libraries node of your project, and select "Add JAR/Folder...". Locate the JAR files, select them, and click OK. Eclipse (Java ...

    Google Android SDK开发范例大全(完整版)

    擅长嵌入式系统软件设计、J2ME游戏开发、Android开发,以及J2EE、JSP、Servlet、JavaBeans、PHP、C#等程序语言,熟悉面向对象技术与Eclipse、Netbeans开发工具,积累多年大型项目开发、跨系统整合经验。 目录 第1...

Global site tag (gtag.js) - Google Analytics