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);