当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

操纵Java Swing成立一个XML编辑器[Java编程]

赞助商链接



  本文“操纵Java Swing成立一个XML编辑器[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

我想您一定对XML有所理解,说不定您目前还跃跃欲试想写一段XML文本呢,但是目前能找到的跨平台的、免费的XML编辑器太少了.所以在本文中,我想介绍一下大概说带您一步一步的开辟一个简单的XML编辑器,当然我们要用到一些最常见的Java 2 Swing组件,不过这些都是免费的,有些是JDK中的,有些是可以从网上下载的.我想通过本文,你便可以成立一个属于你自己的XML编辑器.

先让我介绍一下本文辑写的思绪.首先我想扼要的谈论一下XML和为什么树型构造对比适实用来显示XML,然后我们来看一看JAXP API若何成立所需求的XML类的环境;然后我们将理解用来显示一个图形树的JTree Swing组件;最后,我们将成立一个担当JTree组件的可以反复利用的类,可以用来解析一个XML文档,并把数据显示在一个Jtree中.

说到XML(eXtensible Markup Languge),人们常常把它当作是一种新的用于Web浏览器中的标志语言,就象HTML或CSS一样.其实,XML是一种数据表示语言,它答应你利用一种非常有效的办法来描写你的数据.XML可以使你定义诸如“these three words constitutes a heading”这样的语句.XML答应你声明任何范例的数据,而不是用来把这些数据显示在网页中.

请看一看下面的XML实例:

<article>
<header>
<title> 利用Java Swing 成立一个XML编辑器
<subtitle> 第一部份</subtitle>
</title>
<author> Wayne </author>
<header>
<content> 这是正文</content>
</article>

请注意,这些元素和尺度的HTML语句是差别的,但是它们看上去对比象HTML,这是因为XML和HTML都是根源于SGML语言.差别的是HTML有预定义的标签集,而XML的语法例有很多机动性,它答应你利用表意的标志如<author>来括在数据两边.你还要注意,全部的元素都从属于根元素(上例中为<article>),有些元素则还有自己的子元素,如<subtitle>就是<title>的子元素.这样的数据组织方法有三个好处:数据可以越发表意,数据越发易保护并且数据越发简单作为一个树的构造表现出来,这就是我们为什么利用JTree对象来显示XML数据的缘由.假如你想对XML有更深的理解,请参阅天极网上的相关教程.

JAXP是一个用于处理XML的Java API,它可以使利用程序解析并且转化XML文档,它的功效有点象JDBC API,都是把函数功效抽象成一个个办法.你可以去Apache网站找到最新的Xerces解析器,此中含有最新的JAXP,下载下来今后把它放在你的类目录中.

下面让我们看一下若何利用JTree Swing组件.

我们都知道,在自然界中,一棵树普通都有一个非常粗的树干,树干上有很多树枝分叉.每个树杈和树杈之间都有一定的接洽,因为它们都有同一个根源:树干.这种担当的关系并不只在树枝中有,人类谱系也遵守相同的规律.从父母,到子女再到子女的子女,就这样直到数不清为止.一样,在数据存储中,树的概念也是一种利用同人类家谱树一样办法储存数据的办法.树的每一个树杈称为一个节点,每个有子节点的节点称为父节点,全部的子节点的大众的父节点被称为根节点.一个JTree组件就是一个简单的树数据构造的可视化表现情势.

几近全部的XML编辑器都包含一个可视化的树构造,能让你编辑XML文档中的元素.我们即刻就会构建一个编辑器,不过在此之前,先让我们再理解一下JTree组件.一个节点在一棵树的某个位置储存数据,为了存储数据,必须知道任何一个父节点和它们的子节点.javax.swing.tree包定义了一些非常有效的接口,供应了一种通用的办法构建和操作一个树构造.

TreeNode办法,用于拜候树的节点的信息

MutableTreeNode办法 用在一个可变的树上(可以增添或删除子节点)

TreeModel办法 用于成立和管理与树有关的数据模子.

接下来,我们将成立一个担当JTree的类,供应解析XML文档和用可视化JTree组件把节点显示出来的功效.

成立XTree组件

XTree类由一个构造函数和三个办法构成,为了简单起见我们的组件只能构建一个Xtree,在树成立好之后不能举行处理它的节点.下面让我们来看一个这个类.

域:

private DefaultMutableTreeNode treeNode 这个成员变量储存TreeNode对象用于存储JTree的模子. 

DefaultMutableTreeNode类是在javax.swing.tree中被定义的,默许供应了MutableTreeNode接口的一个实现.

private DocumentBuilderFactory dbf

private DocumentBuilder db

private Document doc 这三个成员变量是JAXP的一部份,用来解析XML文本并转化成DOM(Document Object Model) 对象.


  以上是“操纵Java Swing成立一个XML编辑器[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 操纵javascript得到浏览器中的星号密码
  • 操纵Java运算符
  • 传送和操纵Java对象
  • 操纵Java技术将Atom转换为RDF
  • 操纵java成立躲藏文件
  • <b>操纵Java实现网络传输数据压缩的实例</b>
  • 操纵Java来实现域名和IP地址转换的操作
  • <b>操纵Java实现一个简单的递归算法的实例</b>
  • <b>操纵Java编写网络通信程序</b>
  • 操纵Java Applet播放声音文件
  • 操纵Java语言举行Unicode代理编程
  • 操纵Java3D实现三维图象
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .