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