⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xml_dom解析.txt

📁 Java大部分的基础知识,EJB3,EJB2,WEBSERVICE,SOAP,JMS,MQ,还有些面试题
💻 TXT
字号:

三、xml的作用:主要用于数据的传输,如配置、数据交换,
	与html比较,其主要传输数据,标签可自定义,html主要是
	显示信息,标签不可自定义。
四、dtd:说明xml文件的结构。
	元素:
		<!element customers(customer+)>
		<!element customer(customerName,sex,age)>
		<customer>
			<customerName></customerName>
			<sex></sex>
			<age></age>
		</customer>
		+:1..n
		*:0..n
		?:0..1
		|:多选一
		,:依次出现
	属性:
		<!attlist  元素名  属性名 类型  修饰>
		
		<!attlist customer customerID ID #REQUIRED,
			business CDATA #IMPLIED
		>
五、schema
	1、复杂类型:当前元素有子元素或属性时必须用复杂类型
		<complexType name="customers">
			<sequence>
				<element name="customer" minOccors="0" maxOccors="unbounded">
			</sequence>
			<attribute name="customerID" type="xs:string"/>
		</complexType>
		<element name="sex" type="sex_type"/>
	2、简单类型:说明一个元素的文本值或属性值。
		<simpleType name="sex_type">
			<restriction base="xs:string">
				<enumeration value="男"/>
				<enumeration value="女"/>
			</restriction>
		</simpleType>
	3、可以通过type指向已有的一个类型。	
六、xsl:可以将一个xml转化为一个html
	1、必须有一个template
	2、通过apply-template调用另一个template
	3、主要标签
		sort
		value-of
		template
		apply-template
		for
		choose
		变量
七、dom解析原理
	将整个xml文件加载到内存中形成一个dom树,dom树中的每一个节点是一个对象,
	通过对象的方法与外界交互。
	优:
		可随意读	可写
	缺:
		解析慢
		内存消耗大
八、dom的六大接口
	Document:文档
		NodeList nl=doc.getElementsByTagName("customer");
		Element customer=doc.createElement("customer");
		doc.createTextNode();
		doc.applentChild("");//加入一个根节点
		doc.documentElement;//得到根元素
	Node:节点
		Element:元素
			applendChild()
			setAttribute("属性名","值");
			getAttribute("属性名");
		TextNode:文本节点
			getNodeValue();//得到文本节点值
	Attribute:属性
		
	NodeList:节点集合
		1、得到长度
			nl.getLength();
		2、取出一个节点
			nl.item(1);
七、dom的解析过程
	DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
	DocumentBuilder db=dbf.newDocumentBuilder();
	Document doc=db.parse("c:/a.xml");//解析已有的xml文档
	Document doc=db.newDocument();//产生一个新的dom对象
八、dom的写出过程
	TransformerFactory tff=TransformerFactory.newInstance();
	Transformer tffer=tff.newTransformer();
	tffer.trans(new DOMSource(doc),new StreamResult("c:\a.xml"));
九、sax解析
	特点:边读边解析,只读,只进,不可写,所以快,消耗内存小。
	实现:
		1、实现的一个处理类继承于DefaultHandler,覆盖如下方法
			startDocument:文档开始调用
			startElement:元素开始调用
			character:遇到元素文本调用
			endElement:元素结束调用
			endDocument:文档结束调用
		2、通过SaxParser解析
			SaxParserFactory spf=SaxParserFactory.newInstance();
			SaxParser parser=spf.newSaxParser();
			parser.parse(new 处理类,具体的xml文件);
十、通过sax解析customer.xml文件,将customer.xml中的内容写入到数据库中。

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -