zoukankan      html  css  js  c++  java
  • html 和xml

    Eclipse:没有插件.(自己装)(免费)
    MyEclipse:包含大量插件.(收费)
    
    //-----------------------------------
    HTML概念
    	HTML==> hyper text mark-up language==>超文本标记语言
    	超文本: 1.表达能力优于普通文本.声音 .图形等..
    			2.超链接
    	标记语言:标记构成的.(HTML XML XHTML)
    	
    	HTML是干什么的? 
    		1.网页.
    		2.展示.
    	HTML是由谁来解析?
    		浏览器来负责解析HTML.
    	HTML文档的后缀名?
    		.html
    		.htm
    		以上两种后缀名没有区别.
    	文档构成:
    		HTML文档.
    		最外层使用<HTML>标签包裹
    				<HEAD> 头 ==> 标题.网页属性信息,CSS..
    				<BODY> 体 ==> 正文.
    	标签写法:
    		1.<>中包裹一个英文单词
    		2.所有标签不区分大小写(推荐使用小写)
    		3.标签分为两类
    			1>围堵标记=> 有开始标签 有结束标签
    			2>自闭合标签 => 例如 <br/>
    		注意:所有标记语言,标签中的英文单词没有以数字开头的.<>
    	
    	
    		注意:HTML中不支持 : 空格 回车 制表符.都会被解析成一个空白字符.
    		
    
    1.什么是解析xml?
    	系统最终会从xml中读取数据.读取的过程就是解析.
    	CRUD => 增删改查 => create read update delete => 解析指的就是读.
    2.什么是解析器?
    	就是用来解析xml的类.
    	过滤器,拦截器,监听器....都是具备相应功能的java类而已.
    3.两个常见的解析xml的思路!.
    思想:	
    	DOM:将文档中所有内容都封装成对象.读取时,将所有对象都加载到内存中.在内存中创建一颗dom树(记录对象间的关系).
    		优点: 方便的进行增删改查.
    		缺点: 会非常消耗内存.
    	sax:事件驱动的.与pull解析类似.把xml文档的 读取过程,划分出5类事件.我们只要提供遇到每类事件做什么的锦囊即可.
    		优点:内存占用小.
    		缺点: 不能进行增删改的操作.
    	
    	DOM解析是由w3c推荐提出的.
    	Sax解析是由民间提出的.
    	
    
    	DOM:
    		把所有内容封装成了5类对象.
    			document
    			Element
    			Attribute
    			Text
    			Commons
    			共同的父类
    			node
    			NOde的属性:
    				自身属性:
    					nodeType
    					nodeName
    					nodeValue
    				导航属性
    					找子节点的:firstChild lastChild childNodes
    					找父节点的:parentNode
    					找兄弟节点:nextSibling previousSibling
    		获得Element的方式
    			getElementById           ==> Document
    			getELementsByTagName     ==> Document/Element
    			getELementsByClassName   ==> Document/Element
    			getElementsByName        ==> Document
    		对于增删改的操作:
    			创建一个元素: document.createElement
    			添加一个元素: element.appendChild ,element.insertBefore
    			替换一个元素: element.replaceChild
    			删除一个元素: element.removeChild
    
    3.JAXP ==> JDK提供的 ==> java api for xml parser
    	思想在java中的体现是接口.
    	我们要开发的话需要接口的实现类.
    	由各大解析器厂商提供实现接口的类.
    	
    	
    	A a  = new AImpl(); // Aimpl2;
    	A a  = new AImpl2();
    //---上面的切换实现类的方式,需要该源代码,太过原始-----
    	A a = JAXP.getXXX();==> 配置文件 ==> 我们通过修改配置文件就可以实现切换实现类.
    	
    	//反射.泛型.
    	
    //------------------------------------------------------------------------------------------
    DOM4J ==> 框架 ==>  
    Dom for java
    DOM4J
    //-------------------------------------------------------------------------------------------
    DOM4J 整合两种思想.(SAX DOM)的思想.
    使用sax的思想做读取xml.
    又参照dom的思想,也在内存中创建了一颗对象关系树. 我们在学习的时候,参照之前我们学习的dom树即可.
    
    
    //是用dom4j如何避免乱码?
    
    	//要保证写入的编码和读取的编码一致.
    		1.写入的编码如何控制?
    			XMLWriter writer = new XMLWriter(new PrintWriter("src/students_copy.xml","UTF-8"),format);
    		2.读取的编码如何控制?
    			<?xml version="1.0" encoding="GBK"?>,其中encoding属性决定了读取时采用什么编码,而encoding属性由format.setEncoding("GBK");控制.
    	//其实要保证不乱码上面的方法太弱了!
    		方法: 使用字节流绝对不会出现乱码!如下:
    		XMLWriter writer = new XMLWriter(new FileOutputStream("src/students_copy.xml"),format);
    
    
    	
    			
    
  • 相关阅读:
    openssl-1.0.2s window下编译,生成dll
    webrtc中Native层视频解码器的创建过程
    webrtc收发音视频(createoffer的使用)
    webrtc中 video/audioTrack 架构解析
    让自己的vs工程能够使用webrtc库
    如何修改webrtc的工程(vs 2017)
    webrtc在windows下的编译
    ffserver在windows下的编译
    网络学习笔记(三):HTTP缓存
    Vue2.0源码阅读笔记(四):nextTick
  • 原文地址:https://www.cnblogs.com/sunyaxue/p/6519003.html
Copyright © 2011-2022 走看看