亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? domtreewalkertreemodel.java

?? 在java中實現數據庫的連接和xml再java中的使用
?? JAVA
字號:
/* * Copyright (c) 2000 David Flanagan.  All rights reserved. * This code is from the book Java Examples in a Nutshell, 2nd Edition. * It is provided AS-IS, WITHOUT ANY WARRANTY either expressed or implied. * You may study, use, and modify it for any non-commercial purpose. * You may distribute it non-commercially as long as you retain this notice. * For a commercial use license, or to purchase the book (recommended), * visit http://www.davidflanagan.com/javaexamples2. */package com.davidflanagan.examples.xml;import org.w3c.dom.*;                // Core DOM classesimport org.w3c.dom.traversal.*;      // TreeWalker and related DOM classesimport org.apache.xerces.parsers.*;  // Apache Xerces parser classesimport org.xml.sax.*;                // Xerces DOM parser uses some SAX classesimport javax.swing.*;                // Swing classes import javax.swing.tree.*;           // TreeModel and related classesimport javax.swing.event.*;          // Tree-related event classesimport java.io.*;                    // For reading the input XML file/** * This class implements the Swing TreeModel interface so that the DOM tree * returned by a TreeWalker can be displayed in a JTree component. **/public class DOMTreeWalkerTreeModel implements TreeModel {    TreeWalker walker;  // The TreeWalker we're modeling for JTree        /** Create a TreeModel for the specified TreeWalker */    public DOMTreeWalkerTreeModel(TreeWalker walker) { this.walker = walker; }    /**      * Create a TreeModel for a TreeWalker that returns all nodes     * in the specified document     **/    public DOMTreeWalkerTreeModel(Document document) {	DocumentTraversal dt = (DocumentTraversal)document;	walker = dt.createTreeWalker(document, NodeFilter.SHOW_ALL,null,false);    }    /**      * Create a TreeModel for a TreeWalker that returns the specified      * element and all of its descendant nodes.     **/    public DOMTreeWalkerTreeModel(Element element) {	DocumentTraversal dt = (DocumentTraversal)element.getOwnerDocument();	walker = dt.createTreeWalker(element, NodeFilter.SHOW_ALL, null,false);    }    // Return the root of the tree     public Object getRoot() { return walker.getRoot(); }        // Is this node a leaf? (Leaf nodes are displayed differently by JTree)    public boolean isLeaf(Object node) {	walker.setCurrentNode((Node)node);   // Set current node	Node child = walker.firstChild();    // Ask for a child	return (child == null);              // Does it have any?    }        // How many children does this node have?    public int getChildCount(Object node) {	walker.setCurrentNode((Node)node);   // Set the current node	// TreeWalker doesn't count children for us, so we count ourselves	int numkids = 0;	Node child = walker.firstChild();    // Start with the first child	while(child != null) {               // Loop 'till there are no more	    numkids++;                       // Update the count	    child = walker.nextSibling();    // Get next child	}	return numkids;                      // This is the number of children    }        // Return the specified child of a parent node.    public Object getChild(Object parent, int index) {	walker.setCurrentNode((Node)parent);  // Set the current node	// TreeWalker provides sequential access to children, not random	// access, so we've got to loop through the kids one by one	Node child = walker.firstChild();	while(index-- > 0) child = walker.nextSibling();	return child;    }        // Return the index of the child node in the parent node    public int getIndexOfChild(Object parent, Object child) {	walker.setCurrentNode((Node)parent);    // Set current node	int index = 0;	Node c = walker.firstChild();           // Start with first child	while((c != child) && (c != null)) {    // Loop 'till we find a match	    index++;	    c = walker.nextSibling();           // Get the next child	}	return index;                           // Return matching position    }        // Only required for editable trees; unimplemented here.    public void valueForPathChanged(TreePath path, Object newvalue) {}        // This TreeModel never fires any events (since it is not editable)    // so event listener registration methods are left unimplemented    public void addTreeModelListener(TreeModelListener l) {}    public void removeTreeModelListener(TreeModelListener l) {}    /**     * This main() method demonstrates the use of this class, the use of the     * Xerces DOM parser, and the creation of a DOM Level 2 TreeWalker object.     **/    public static void main(String[] args) throws IOException, SAXException {	// Obtain an instance of a Xerces parser to build a DOM tree.	// Note that we are not using the JAXP API here, so this	// code uses Apache Xerces APIs that are not standards	DOMParser parser = new org.apache.xerces.parsers.DOMParser();	// Get a java.io.Reader for the input XML file and 	// wrap the input file in a SAX input source	Reader in = new BufferedReader(new FileReader(args[0]));	InputSource input = new org.xml.sax.InputSource(in);	// Tell the Xerces parser to parse the input source	parser.parse(input);	// Ask the parser to give us our DOM Document.  Once we've got the DOM	// tree, we don't have to use the Apache Xerces APIs any more; from	// here on, we use the standard DOM APIs	Document document = parser.getDocument();	// If we're using a DOM Level 2 implementation, then our Document	// object ought to implement DocumentTraversal 	DocumentTraversal traversal = (DocumentTraversal)document;	// For this demonstration, we create a NodeFilter that filters out	// Text nodes containing only space; these just clutter up the tree	NodeFilter filter = new NodeFilter() {		public short acceptNode(Node n) {		    if (n.getNodeType() == Node.TEXT_NODE) { 			// Use trim() to strip off leading and trailing space.			// If nothing is left, then reject the node			if (((Text)n).getData().trim().length() == 0)			    return NodeFilter.FILTER_REJECT;		    }		    return NodeFilter.FILTER_ACCEPT;		}	    };	// This set of flags says to "show" all node types except comments	int whatToShow = NodeFilter.SHOW_ALL & ~NodeFilter.SHOW_COMMENT;	// Create a TreeWalker using the filter and the flags	TreeWalker walker = traversal.createTreeWalker(document, whatToShow,						       filter, false);	// Instantiate a TreeModel and a JTree to display it	JTree tree = new JTree(new DOMTreeWalkerTreeModel(walker));		// Create a frame and a scrollpane to display the tree, and pop them up	JFrame frame = new JFrame("DOMTreeWalkerTreeModel Demo");	frame.getContentPane().add(new JScrollPane(tree));	frame.setSize(500, 250);	frame.setVisible(true);    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区精品久久911| 激情欧美日韩一区二区| 中文字幕精品三区| 精品国产在天天线2019| 日韩一区二区视频| 日韩精品一区二区三区老鸭窝 | 日韩影院精彩在线| 一区二区高清免费观看影视大全| 成人欧美一区二区三区视频网页| 国产精品夫妻自拍| 亚洲欧美日本韩国| 亚洲va国产天堂va久久en| 亚洲香蕉伊在人在线观| 亚洲第一av色| 精品一区二区三区香蕉蜜桃 | 久久综合一区二区| 国产亚洲短视频| 亚洲日本在线视频观看| 亚洲一区在线视频| 久久精品免费观看| 国产成人综合网站| 日本大香伊一区二区三区| 欧美日韩成人高清| 久久综合色一综合色88| 国产精品久久久久久久久快鸭| 亚洲丝袜精品丝袜在线| 日本美女视频一区二区| 国产酒店精品激情| 91原创在线视频| 91精品黄色片免费大全| 亚洲日本一区二区| 免费久久精品视频| 99精品久久只有精品| 91麻豆精品国产91久久久久久| 26uuu精品一区二区| 一区二区三区中文字幕| 免费av网站大全久久| 成人免费观看男女羞羞视频| 欧美性猛交xxxx乱大交退制版| 精品少妇一区二区三区日产乱码| 国产精品私房写真福利视频| 亚洲成a天堂v人片| 国产v日产∨综合v精品视频| 欧美亚洲日本国产| 国产精品久久久久影视| 视频一区在线播放| 色综合久久久久综合体| 精品国产乱码久久| 午夜一区二区三区视频| 国产成人亚洲精品青草天美| 欧美精品久久久久久久久老牛影院| 国产视频视频一区| 麻豆久久久久久久| 欧美日韩激情一区二区| 国产精品国产a级| 国产麻豆视频精品| 欧美一级日韩免费不卡| 亚洲韩国一区二区三区| 99视频一区二区三区| 精品国产免费久久| 蜜臀久久99精品久久久画质超高清 | 成人综合婷婷国产精品久久| 91精品国产综合久久福利软件| 日本成人中文字幕在线视频| 色天天综合久久久久综合片| 国产午夜精品一区二区三区四区| 日韩不卡免费视频| 7777精品久久久大香线蕉| 亚洲黄网站在线观看| 丁香激情综合五月| 国产色婷婷亚洲99精品小说| 激情综合网激情| 欧美成人精品1314www| 蜜芽一区二区三区| 日韩视频免费直播| 久久黄色级2电影| 精品日韩在线一区| 国产专区欧美精品| 久久精品一区二区三区不卡| 国产精品亚洲人在线观看| 精品国产1区二区| 精品一区二区三区视频在线观看 | 国产在线日韩欧美| 亚洲精品在线观| 国产精品一区二区三区网站| 精品国产乱码久久久久久久久| 精品亚洲国产成人av制服丝袜| 精品久久久久久久久久久久包黑料 | 日韩高清在线不卡| 日韩一区二区在线播放| 激情综合一区二区三区| 久久久久久夜精品精品免费| 国产成人激情av| 国产精品久久久久一区 | 日本中文字幕一区二区视频| 欧美一区永久视频免费观看| 久久国产尿小便嘘嘘尿| 精品电影一区二区| 成人的网站免费观看| 亚洲美腿欧美偷拍| 91精品国产免费| 国产精品一区二区在线看| 国产精品久久久久婷婷二区次| 91丨porny丨首页| 偷拍一区二区三区四区| 欧美精品一区二区三区在线| 成人黄色片在线观看| 一区二区三区国产精品| 日韩视频免费观看高清在线视频| 欧美日本不卡视频| 久久99精品久久久久婷婷| 国产视频一区在线观看 | 五月婷婷另类国产| 国产欧美日韩在线观看| 日本精品裸体写真集在线观看| 日本不卡免费在线视频| 国产亚洲欧洲997久久综合| 在线观看91精品国产入口| 久久av中文字幕片| 亚洲精品成人精品456| 欧美一级片在线| 色婷婷综合久久久中文字幕| 裸体歌舞表演一区二区| 亚洲免费在线播放| 精品处破学生在线二十三| 在线日韩一区二区| 粉嫩av一区二区三区| 日韩国产精品91| 亚洲一级二级三级| 国产精品久久久久久户外露出| 91精品国产手机| 欧美影院精品一区| 成人丝袜高跟foot| 日韩福利电影在线观看| 亚洲三级在线看| 国产亚洲欧美日韩俺去了| 欧美一级艳片视频免费观看| 色先锋久久av资源部| 成人一级片网址| 三级欧美在线一区| 欧美精品第1页| 国产99精品国产| 日本成人在线不卡视频| 尤物在线观看一区| 国产精品毛片大码女人| 26uuu亚洲综合色欧美| 欧美一区二区大片| 91精品国产一区二区三区蜜臀 | 久久先锋影音av| 欧美一级欧美三级| 欧美军同video69gay| 欧美日韩一区二区三区视频| 色噜噜久久综合| 欧亚洲嫩模精品一区三区| 色视频一区二区| 欧美制服丝袜第一页| 色呦呦日韩精品| 欧美亚洲自拍偷拍| 欧美性生活大片视频| 欧美系列亚洲系列| 欧美系列日韩一区| 欧美精三区欧美精三区| 欧美一区二区三区免费视频| 56国语精品自产拍在线观看| 欧美日韩1区2区| 欧美videossexotv100| 久久蜜桃av一区二区天堂| 精品成人佐山爱一区二区| 久久精品视频在线看| 国产精品毛片高清在线完整版 | 91一区一区三区| 欧美午夜精品免费| 日韩欧美黄色影院| 久久精品一二三| 综合分类小说区另类春色亚洲小说欧美| 国产精品麻豆视频| 亚洲观看高清完整版在线观看 | 激情文学综合插| 成人一级视频在线观看| 欧美性淫爽ww久久久久无| 制服.丝袜.亚洲.中文.综合| 久久老女人爱爱| 一区二区三区四区亚洲| 青青草97国产精品免费观看无弹窗版| 国内精品伊人久久久久影院对白| 国产成人亚洲精品青草天美| 欧美优质美女网站| 2023国产精品| 亚洲一区二区三区爽爽爽爽爽 | 国内一区二区在线| 91在线国产福利| 欧美电影一区二区三区| 久久夜色精品一区| 一区二区三区在线视频免费| 免费三级欧美电影| 91色.com| 欧美国产一区二区在线观看| 一区二区三区四区不卡在线| 激情综合一区二区三区| 91国偷自产一区二区使用方法|