Javaweb第十天學習
表單提交方式:
<a href=”目標地址”?引數=引數值/>
Onclick:滑鼠點選事件
Onchenge:改變內容(一般和select一起使用)
XML簡介
eXtensible Markup Language :可擴充套件標記型語言
**標記型語言:HTML是標記性語言 使用標籤操作
**可擴充套件:標籤可以自己定義,也可以有中文
XML用途
主要的工能是儲存資料,有利於程式的維護
有兩個版本 1.0 1.1一般使用1.0 因為不能向下相容
XML的應用
不同的系統之間傳輸資料
***有利於程式的維護
用來表示生活中有關係的資料、、
用在配置檔案中
XML的語法
1,xml的文件宣告
建立檔案,字尾是xml如果寫xml,第一步必須有一個文件宣告(只有寫的文件宣告之後才能表示xml檔案)
//文件宣告 <?xml version=”1.0” encoding=”gdk”?>
注意:文件說明必須放到第一行第一列,屬性之間有一個空格
屬性:version:xml的版本 1.0
Encoding:xml編碼 gdk utf-8 iso8859-1(不包括中文)
Standalone:是否需要其他檔案一般不用
中文亂碼問題:設定儲存時候的編碼和開啟時候的編碼方式一致
2,定義元素(標籤的定義)
有開始必須有結束
如果標籤沒有內容那麼可以 在標籤內結束標籤例如<a/>
標籤可以巢狀,但必須合理<aa><bb></aa></bb>不合理
一個xml中只能有一個根標籤
注意:有把空格和換行都當做內容
命名規則:1區分大小寫,2不能以數字下劃線開頭,3不能以”xml”開頭
4標籤裡面不能包含空格和冒號5XML標籤可以是中文
3,定義屬性
是標記型文件,可以有屬性
屬性定義的要求:一個標籤上可以有多個屬性,屬性名稱不能相同,命名要規範。屬性命名規範和名稱規範一樣
4,註釋
寫法:<!—註釋--> 注意:註釋不可以巢狀,註釋也不能放到第一行
5,特殊字元
特殊字元想要顯示出來,就需要轉義
** < <
** > >
6,CDATA區
可以解決多個字元都需要轉義的時候
寫法<![CDATE[內容]]>
7,PI指令(處理指令)
對中文的標籤名稱不起作用
總結:
1 大小寫敏感
1 必須正確巢狀
2 文件只能有一個根元素
3 屬性值必須加引號
4 空格和換行都會被當做內容
xml的約束
為什麼需要約束
約束的技術:dtd約束和scheme約束
dtd的快速入門
建立一個檔案字尾是.dtd
步驟:看xml中有多找個元素,有幾個元素就在dtd 檔案中寫幾個<!ELEMENT>
判斷元素是簡單元素(沒有子元素)<!ELEMENT 元素名(# PCDATA)>
還是複雜元素(有子元素)<!ELEMENT元素名(子元素名,子元素名)>
需要在xml檔案中引入dtd檔案:<!DOCTYPE根元素名稱 SYSTEM “dtd的地址”>
如果想要教驗那麼必須使用工具,瀏覽器只有解析沒有教驗
dtd 的三種引入方式
1)引入外部檔案 <!DOCTYPE 根元素名稱 SYETEM “dtd的路徑”>
2)在XML檔案中直接定義約束<!DOCTYPE 根元素名 [約束程式碼]>
3)使用網路的dtd檔案
<!DOCTYPE 根元素 PUBLIC PUBLIC “dtd的名稱” “DTD文件的URL”>
使用dtd定義元素
語法:<!ELEMENT 元素名 約束>
簡單元素:沒有子元素
<!ELEMENT name (#PCDATA)>
(#PCDATA):約束name必須是字串
EMPTY:約束元素為空
any: 任意元素
複雜元素:
<!ELEMENT 元素名稱 (子元素)>
表示元素出現的次數:
+:元素至少出現一次
?:元素出現一次或者不出現
*:出現多找次都可以
Eg:<!ELEMENTpreson (name+,age?,school*)>
元素出現的順序必須和約束的順序一致
子元素使用|隔開那麼所有子元素就只能出現一個