锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲色成人网一二三区,久久久亚洲精品无码,亚洲一区免费在线观看http://www.tkk7.com/wiser/category/17583.htmlzh-cnTue, 20 Mar 2007 03:42:55 GMTTue, 20 Mar 2007 03:42:55 GMT60Java&XML鏁村悎絎旇(鍥?http://www.tkk7.com/wiser/archive/2006/11/22/82834.html鑻辨槑鑻辨槑Wed, 22 Nov 2006 09:23:00 GMThttp://www.tkk7.com/wiser/archive/2006/11/22/82834.htmlhttp://www.tkk7.com/wiser/comments/82834.htmlhttp://www.tkk7.com/wiser/archive/2006/11/22/82834.html#Feedback0http://www.tkk7.com/wiser/comments/commentRss/82834.htmlhttp://www.tkk7.com/wiser/services/trackbacks/82834.htmlhttp://tech.ccidnet.com/art/294/20021120/31320_4.html)


DOM 鐢盬3C 鍒跺畾錛岀洰鏍囨槸鎻愪緵涓涓彲浠ラ氱敤浜庡悇縐嶇▼搴忚璦銆佹搷浣滅郴緇熷拰搴旂敤紼嬪簭鐨凙PI錛屾墍浠OM 鍏鋒湁鏋侀珮鐨勫吋瀹規э紝涓嶈CORBA銆丆OM銆丣ava銆丆++絳夐兘鍙互浣跨敤鍚屾牱鐨凞OM 鎺ュ彛銆備篃鍥犱負榪欑璺ㄥ鉤鍙扮殑闇姹傦紝DOM 鍦ㄥ畾涔夋椂灝遍噰鐢ㄤ簡CORBA 鏍囧噯錛屽洜姝ゅ畠鍙互涓哄悇涓璦鎻愪緵瀹屽叏鐩稿悓鐨勬帴鍙c?

DOM 鏄枃妗e璞℃ā鍨嬨俋ML 灝嗘暟鎹粍緇囦負涓媯墊爲錛孌OM 灝辨槸瀵硅繖媯墊爲鐨勪竴涓璞℃弿榪般傞氫織鍦拌錛屽氨鏄氳繃瑙f瀽XML 鏂囨。錛屼負XML 鏂囨。鍦ㄩ昏緫涓婂緩绔嬩竴涓爲妯″瀷錛屾爲鐨勮妭鐐規槸涓涓釜瀵硅薄銆傛垜浠氳繃瀛樺彇榪欎簺瀵硅薄灝辮兘澶熷瓨鍙朮ML 鏂囨。鐨勫唴瀹廣?

DOM 鐨勫熀鏈璞℃湁5涓紝鍒嗗埆鏄疍ocument銆丯ode銆丯odeList銆丒lement 鍜?Attr銆?

涓嬮潰涓句竴涓氳繃涓涓浘褰㈢晫闈㈣瀵烡OM 瀵硅薄鐨勪緥瀛愩傚湪Java 鐨勬爣鍑嗗寘閲屾湁JTree 鍙互鏉ヨ〃杈炬爲鐨勬蹇碉紝緇撳悎Java 鐨勭獥鍙Frame 錛屽畬鎴愪竴涓被浼間簬IE嫻忚鍣ㄥ姛鑳界殑DOM 瀵硅薄鏌ョ湅鍣ㄣ?

DOMTreeView.java 鐨勬簮紼嬪簭浠g爜璇﹁http://linux.ccidnet.com鐨勬湡鍒婃祻瑙堢11鏈熴?

2錛嶴AX 緙栫▼

SAX(Simple Application interface for XML)鏄竴涓負鍩轟簬浜嬩歡XML瑙f瀽鍣ㄥ畾涔夌殑銆佸彲浠ュ厤璐硅幏寰楃殑銆佷笌騫沖彴鍜岃璦鏃犲叧鐨凙PI錛屽畠鍏佽紼嬪簭鍜岃剼鏈姩鎬佺殑璁塊棶鍜屾洿鏂版枃妗e唴瀹廣佺粨鏋勫拰椋庢牸銆傛墍浠ワ紝瀹冧綔涓轟竴涓腑闂翠歡灞傜敤鏉ユ妸XML鏂囨。涓殑鏁版嵁瑙i噴鎴愮浉搴旂殑Java浜嬩歡銆係AX榪欎釜鎺ュ彛瑙勮寖鏄疿ML鍒嗘瀽鍣ㄥ拰澶勭悊鍣ㄦ彁渚涚殑銆佽緝XML鏇村簳灞傜殑鎺ュ彛錛屽畠鑳芥彁渚涘簲鐢ㄤ互杈冨ぇ鐨勭伒媧繪с係AX鏄竴縐嶄簨浠墮┍鍔ㄧ殑鎺ュ彛銆傚畠鐨勫熀鏈師鐞嗘槸錛岀敱鎺ュ彛鐨勭敤鎴鋒彁渚涚鍚堝畾涔夌殑澶勭悊鍣紝XML鍒嗘瀽鏃墮亣鍒扮壒瀹氱殑浜嬩歡錛屽氨鍘昏皟鐢ㄥ鐞嗗櫒涓壒瀹氫簨浠剁殑澶勭悊鍑芥暟銆備竴鑸琒AX閮芥槸Java鐨勬帴鍙o紝浣咰++涔熷彲浠ョ敤SAX鎺ュ彛錛屽彧鏄疌++鐨勫垎鏋愬櫒姣旇緝灝戙係AX闇瑕佺敤鎴鋒彁渚涗互涓嬩笁涓鐞嗗櫒綾葷殑瀹炵幇錛?

錛?錛塂ocumentHandlerXML錛氭枃浠朵簨浠剁殑澶勭悊鍣紱

錛?錛塂TDHandler錛欴TD涓簨浠剁殑澶勭悊鍣紱

錛?錛塃rrorHandler錛氬嚭閿欏鐞嗗櫒銆?

涓嬮潰涓句竴涓緥瀛愶紝瀹冨疄鐜頒簡璁稿澶勭悊XML 鏂囦歡鏃墮噸瑕佷簨浠剁殑ContentHandler 鎺ュ彛錛屽茍涓旇鏄嶴AX 鏄浣曞垎鏋怷ML 鏁版嵁鐨勩?

MySAXParser.java 鐨勬簮紼嬪簭浠g爜濡備笅(鑺傞夐儴鍒?錛?
//MySAXParser.java
import java.io.IOException;
import java.io.FileInputStream;
import java.util.Properties;
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
import org.xml.sax.ErrorHandler;
import org.xml.sax.Locator;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.XMLReaderFactory;
/**
 * <code>SAXParser</code>鍙互浠庡懡浠よ涓嬭鍏ヤ竴涓猉ML鏂囦歡騫朵笖浣跨敤SAX鏍囧噯鐨勬満鍒舵潵鍒嗘瀽璇ユ枃浠躲?
 */
public class MySAXParser{
	/**
	 *<p>
	 *鎴戜滑灝嗗湪榪欓噷浣跨敤鏍囧噯鐨凷AX鐨勫鐞嗘満鍒?handler)鏉ュ鐞哫ML鏂囦歡
	 *</p>
	 * @param uri 嬈插垎鏋愮殑XML鏂囦歡鐨刄RI
	 */
	public void parseXML(String uri) {
		try{
			System.out.println("姝e湪鍒嗘瀽涓殑XML鏂囦歡: " + uri + "\n");
			XMLReader parser =
                		XMLReaderFactory.createXMLReader(
                    		"org.apache.xerces.parsers.SAXParser");
			//XMLReader parser = new SAXParser();
			//娉ㄥ唽鎵璁捐鐨勫唴瀹瑰鐞嗗櫒
			parser.setContentHandler(new MyContentHandler());
			//娉ㄥ唽閿欒澶勭悊鍣?
			parser.setErrorHandler(new MyErrorHandler());
			//鍒嗘瀽鏂囦歡
			parser.parse(uri);
		} catch(IOException ioe){
			System.out.println("鏂囦歡璇誨彇閿欒錛?+ioe.getMessage());
		} catch(SAXException saxe){
			System.out.println("XML鍒嗘瀽閿欒錛?"+saxe.getMessage());
		}
	}
	/**
	 *<p>
	 *涓葷▼搴忎嬌鐢ㄥ懡浠ゅ垪鐨勫弬鏁版潵鎸囧畾鎵瑕佸垎鏋愮殑XML鏂囦歡
	 *</p>
	 */
	public static void main(String[] args) {
		//濡傛灉鍙傛暟鏁扮洰涓嶅錛屽垯杈撳嚭浣跨敤璇存槑錛屽茍緇撴潫紼嬪簭
		if( args.length != 1 ){
			System.out.println("璇瘋緭鍏ユ鍒嗘瀽鐨勬枃浠跺悕: " +"java example3_1 [XML URI]");
			System.exit(-1);
		}
		String uri = args[0];
		MySAXParser myParser = new MySAXParser();
		myParser.parseXML(uri);
	}
}
/**
 *<code>ContentHandler</code>瀹炲仛<code>org.xml.sax.
 *ContentHandler</code>鐣岄潰錛屽茍涓旀彁渚涙彁渚涚浉鍏崇殑鍥炶皟鏂規硶銆?
 *鎵鏈夊拰XML鏂囦歡鍐呭鏈夊叧鐨勫垎鏋愬鐞嗛兘鏄湪榪欓噷瑙e喅銆?
 */
class MyContentHandler implements ContentHandler {
..........
..........


Java 涓?XML 鈥斺擩AXP緙栫▼搴旂敤

鍦ㄨ澶氭柟闈紝Java 璇█宸插彉鎴愪緵XML 閫夋嫨鐨勪竴縐嶉潪甯擱傚悎鐨勭紪紼嬭璦銆傚湪JAXP(鐢ㄤ簬XML璇硶鍒嗘瀽鐨凧ava API)涓寘鍚?涓蔣浠跺寘錛?

1. org.w3c.dom 鈥擶3C 鎺ㄨ崘鐨勭敤浜嶺ML 鏍囧噯瑙勫垝鏂囨。瀵硅薄妯″瀷鐨凧ava 宸ュ叿;

2. org.xml.sax鈥旂敤浜庡XML 榪涜璇硶鍒嗘瀽鐨勪簨浠墮┍鍔ㄧ殑綆鍗旳PI;

3. Javax.xml.parsers 鈥斿伐鍘傚寲宸ュ叿錛屽厑璁稿簲鐢ㄧ▼搴忓紑鍙戜漢鍛樿幏寰楀茍閰嶇疆鐗規畩鐨勮娉曞垎鏋愬櫒宸ュ叿銆?

JAXP 浣滀負Java 搴旂敤杞歡鍜孹ML 鐨勫叕鍏辨帴鍙o紝鐢ㄦ潵淇濊瘉Sun 銆両BM 鍜?Micrsoft 絳夊叕鍙哥殑XML 鍒嗘瀽紼嬪簭鐨勫畬鍏ㄥ吋瀹規с?

JAXP 鏄敱Sun 鎻愪緵鐨凧ava 鐨勬爣鍑哫ML 璇█寮鍙戞帴鍙o紝鐩墠鏈楂樼増鏈負1.1 銆侸AXP1.1鍖呭惈涓や釜閮ㄥ垎錛氫竴涓槸parser 閮ㄥ垎錛屼綅浜嶫avax.xml.parsers 鍖呬腑錛岃礋璐hВ鏋怷ML 鏂囨。錛涘彟涓涓槸transform(TrAX)閮ㄥ垎錛屼綅浜嶫ava.xml.transform 鍖呬腑錛岃礋璐h繘琛寈slt 杞崲宸ヤ綔銆?

JAXP1.1 涓寘鍚?涓猨ar 鏂囦歡錛屽垎鍒槸JAXP.jar銆乧rimson.jar 鍜?xalan.jar 銆侸AXP.jar 鎻愪緵浜嗕竴緋誨垪鐨勭晫闈㈠拰鎶借薄綾伙紝鏄紑鍙戞椂浣跨敤鐨勬帴鍙o紱crimson.jar 涓畾涔変簡瀹為檯涓婁嬌鐢ㄧ殑瑙f瀽鍣紱xalan.jar 涓畾涔変簡transform 澶勭悊鍣ㄣ?

JAXP1.1 鐨勮В鏋愬櫒鎻愪緵浜哠AX2 鍜?DOM2 鏀寔錛屽悓鏃舵敮鎸乆ML1.0 絎簩鐗堬紝涔熸敮鎸佸悕絀洪棿銆侸AXP1.1 鐨凾rAX 閮ㄥ垎鎻愪緵浜嗗Xslt 鎺ㄨ崘鏍囧噯1.0 鐗堟湰鐨勬敮鎸併?

涓嬮潰鐨勪緥瀛愬垎鍒槸浣跨敤JAXP鑾峰緱 Document Builder 寤虹珛涓涓狣OM 瀵硅薄濂楀紡鏂囦歡錛屼互鍙婁嬌鐢↗AXP鑾峰緱涓涓?SAX 璇硶鍒嗘瀽鍣ㄥ墫鏋愪竴涓猉ML 鏂囦歡銆?

(1)DOMDemo.java 婧愮▼搴忎唬鐮佽瑙乭ttp://linux.ccidnet.com鐨勬湡鍒婃祻瑙堢11鏈熴?

(2)SAXDemo.java 婧愮▼搴忎唬鐮佽瑙乭ttp://linux.ccidnet.com鐨勬湡鍒婃祻瑙堢11鏈熴?

鏈夊叧JAXB 鍜?JDOM 鐨勭紪紼嬶紝鐢變簬綃囧箙鏈夐檺錛屽湪姝ゅ氨涓嶅璇翠簡銆?

緇撳悎鐨勬剰涔?/strong>


1錛嶫ava 涓?XML 緇撳悎浠庣敤鎴蜂嬌鐢ㄧ殑搴旂敤鐣岄潰鏉ヨ錛孹ML 鍙互鐢ㄦ潵鑷畾涔夌敤鎴風晫闈€傚鏋滃皢Java 鐨勫浘褰㈢晫闈wing 鎶鏈簲鐢ㄤ互XML 鐨勫艦寮忔潵璁劇疆錛屽氨鍙互鍚屾椂鍙戞尌Java 鐨勨渨rite one, use many鈥濈壒鎬с?

2錛嶫ava 鎻愪緵浜哠ervlet 鍜?JSP 錛圝avaServer Page錛?銆傚疄闄呬笂 XML 鍜?Servlet銆丣SP 鐨勭浉浜掔粨鍚堬紝XML 鍙互鎴愪負Servlet鎴朖SP鐨勮緭鍑鴻緭鍏ヨ璦銆俋ML 涓嶄粎鎻愪緵鍏鋒湁鎰忎箟鐨勬暟鎹紝涔熸彁渚涗簡楠岃瘉鐨勬柟寮?DTD)錛屼嬌寰楃▼搴忚兘杞繪槗鍦拌幏寰楀唴瀹癸紝騫惰兘澶熷交搴曞湴瀹屾垚鍐呭鏁版嵁鍜岃〃杈炬柟寮忕殑鍒嗙銆?

3錛嶺ML 閫氳繃Java 鐨凧DBC涓嶹eb 鏁版嵁搴撶浉緇撳悎銆備互XML涓哄熀紜鐨勬柊涓浠g幆澧冩槸鐩存帴闈㈠Web鏁版嵁鐨勶紝涓嶄粎鍙互寰堝ソ鍦板吋瀹瑰師鏈夌殑Web搴旂敤錛岃屼笖鍙互鏇村ソ鍦板疄鐜癢eb涓殑淇℃伅鍏變韓涓庝氦鎹€俋ML鍙湅浣滀負涓縐嶅崐緇撴瀯鍖栫殑鏁版嵁妯″瀷錛屽緢瀹規槗鍦板皢鍏舵枃妗f弿榪頒笌鍏崇郴鏁版嵁搴撲腑鐨勫睘鎬т竴涓瀵瑰簲璧鋒潵錛屽疄鏂界簿紜湴鏌ヨ涓庢ā鍨嬫娊鍙栥俋ML鑳藉鍔犵粨鏋勫拰璇箟淇℃伅錛屼嬌璁$畻鏈哄拰鏈嶅姟鍣ㄥ嵆鏃跺鐞嗗縐嶅艦寮忕殑淇℃伅銆傚洜姝わ紝榪愮敤XML鐨勬墿灞曞姛鑳戒笉浠呰兘浠嶹eb鏈嶅姟鍣ㄤ笅杞藉ぇ閲忕殑淇℃伅錛岃繕鑳藉ぇ澶у噺灝戠綉緇滀笟鍔¢噺銆?

4錛嶺ML 涓?Java 鐨?EJB錛圗nterprise Java Bean錛?緇撳悎銆俋ML 鍦‥JB 涓婂簲鐢紝瀵逛簬鏁版嵁鐨勬矡閫氬拰EJB 鐨勫弬鏁拌緗紝浣垮緱EJB鍙互灝嗚嚜宸辨墍鍖呭惈鐨勬暟鎹緷鐓SP 鍜?Servlet 瑕佹眰錛屼互 XML 鐨勫艦寮忚繑鍥烇紝璁㎎SP 鍜?Servlet 鑷鍘誨鐞嗗拰鏄劇ず榪欎簺鏁版嵁鏈夊叧鐨勫伐浣溿備竴涓狤JB 鍙兘鐢ㄥ埌鐨勫弬鏁頒細寰堝錛屽茍涓斿緢澶嶆潅錛屽鏋滃彲浠ョ敤XML 鏉ュ畾涔変竴涓竻妤氱殑鍙傛暟琛紝榪欐牱灝卞彲浠ヤ緷鎹笉鍚岀殑闇姹傛潵淇敼EJB 鎿嶄綔鐨勬柟寮忥紝璁╁伐浣滄洿鏈夋晥鐜囥?

5錛嶫ava 鐨凧MS銆丣ava/IDL(CORBA)銆丣ava RMI 鍙奡OAP 絳夊悇縐嶅垎甯冨紡鐨勫鐞嗭紝涓嶺ML 鐨刋ML-RPC 鍜?SOAP 閮藉叿鏈夌浉浼肩殑鍔熻兘銆俋ML-RPC 鍜?SOAP 閮芥槸灝嗗師鏈槸浠ヤ簩榪涘埗褰㈠紡浼犻掔殑娑堟伅錛岀敤XML 鏉ヨ〃杈撅紝榪欐牱紜繚浜嗘墍鏈夌殑搴旂敤紼嬪簭閮藉彲浠ヨ鍙栬繖浜涙秷鎭紝鏁翠釜鍒嗗竷寮忕殑鐜鏇村姞寮鏀俱?img src ="http://www.tkk7.com/wiser/aggbug/82834.html" width = "1" height = "1" />

鑻辨槑 2006-11-22 17:23 鍙戣〃璇勮
]]>
Java&XML鏁村悎絎旇(涓?http://www.tkk7.com/wiser/archive/2006/11/22/82833.html鑻辨槑鑻辨槑Wed, 22 Nov 2006 09:22:00 GMThttp://www.tkk7.com/wiser/archive/2006/11/22/82833.htmlhttp://www.tkk7.com/wiser/comments/82833.htmlhttp://www.tkk7.com/wiser/archive/2006/11/22/82833.html#Feedback0http://www.tkk7.com/wiser/comments/commentRss/82833.htmlhttp://www.tkk7.com/wiser/services/trackbacks/82833.html

鑻辨槑 2006-11-22 17:22 鍙戣〃璇勮
]]>
Java&XML鏁村悎絎旇(浜? http://www.tkk7.com/wiser/archive/2006/11/22/82832.html鑻辨槑鑻辨槑Wed, 22 Nov 2006 09:21:00 GMThttp://www.tkk7.com/wiser/archive/2006/11/22/82832.htmlhttp://www.tkk7.com/wiser/comments/82832.htmlhttp://www.tkk7.com/wiser/archive/2006/11/22/82832.html#Feedback0http://www.tkk7.com/wiser/comments/commentRss/82832.htmlhttp://www.tkk7.com/wiser/services/trackbacks/82832.htmlhttp://tech.ccidnet.com/art/294/20021120/31320_2.html)


濡傛灉涓涓猉ML鏂囨。絎﹀悎涓婅堪鏂囨。鎵琛ㄧ幇鍑烘潵鐨勪竴浜涚壒寰侊紝鍗沖彲縐頒箣涓鴻壇鏋勭殑XML鏂囨。銆傝繖浜涚壒寰佸涓嬶細

1. 姣忎釜鍏冪礌蹇呴』鏈夎搗濮嬪拰緇撴潫鏍囪錛?

2. 鏂囨。鍙湁涓涓牴鍏冪礌錛?

3. 姝g‘鍦板絀哄厓绱犺繘琛屾牸寮忓寲錛?

4. 寮濮嬪拰緇撴潫鏍囨敞蹇呴』鍖歸厤(鍖哄垎澶у皬鍐?錛?

5. 鍏冪礌蹇呴』姝g‘鍦板祵濂楋紱

6. 灞炴у煎繀欏葷敤寮曞彿鎷搗鏉ャ?

IsXMLAvailable.java 鏄敤浜庤繘琛孹ML鏂囨。鑹瀯媯楠岀殑Java紼嬪簭錛屼唬鐮佸涓嬶細

//IsXMLAvailable.java
import java.io.File;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.*;
public class IsXMLAvailable{
  public static void main(String argv[]){
  if (argv.length!=1){
  System.out.println("鍙傛暟閿欒!");
  System.exit(1);
  }
  try{
  //鍙栧緱宸ュ巶綾葷殑涓涓柊瀹炰緥
  DocumentBuilderFactory dbf=
         DocumentBuilderFactory.newInstance();
  //閫氳繃闈欐佹柟娉曞垱寤篋ocumentBuilder 瀹炰緥
  //鍑嗗寤虹珛Document 瀵硅薄
  DocumentBuilder db=dbf.newDocumentBuilder();
  //寤虹珛XML 鏂囨。瀵硅薄
  Document doc=db.parse(new File(argv[0]));
  //鏍煎紡鍖栨枃妗?
  doc.getDocumentElement().normalize();
  System.out.println("XML 鏂囦歡緇撴瀯姝g‘!");
  }
  catch(SAXParseException e){
  //閿欒鎻愮ず錛孲ystemID 涓哄叏璺緞鐨勬枃浠跺悕
    System.out.println("XML 鍦ㄧ" + 
e.getLineNumber()+"琛屽嚭閿欏紓甯革紝鏂囦歡淇℃伅:"+e.getSystemId());
    System.out.println("\n"+e.getMessage());
  }
  catch(SAXException ex){
  ex.printStackTrace();
  }
  catch(Throwable th){
  th.printStackTrace();
   }
  }
}


榪愯鈥渏ava IsXMLAvailable People.xml鈥濆懡浠わ紝濡傜▼搴忓嚭閿欙紝鍒欐樉紺虹鍑犺鏈夐敊錛屽茍緇欏嚭鍙兘鐨勯敊璇彁紺猴紱濡傜▼搴忔紜紝鍒欐樉紺?鈥淴ML 鏂囦歡緇撴瀯姝g‘!鈥?

寤虹珛涓涓湁鏁堢殑XML 鏂囨。(DTD)鍙婇獙璇佺殑瀹炰緥

鑹ソ鐨刋ML 鏂囨。鍙鏄庝簡鍏惰娉曟紜紝騫舵病鏈夎В鍐寵涔夐棶棰樸俋ML 鎻忚堪浜嗘湁涓瀹氬惈涔夌殑鏁版嵁錛屽叾涓彲浠ユ寚瀹氬寘鍚暟鎹殑瑙勫垯銆傞氳繃榪欑鎸囧畾鐨勮鍒欙紝鍙互楠岃瘉宸插0鏄庣鍚堣鍒欑殑XML 鏂囨。鐨勬湁鏁堟э紝鍗矰TD鈥斺旀枃妗g被鍨嬪畾涔夈?

DTD 鍙互紜繚搴旂敤紼嬪簭鎺ユ敹鍒頒竴涓湁鏁堢殑XML 鏂囨。錛岀劧鍚庡彲浠ラ拡瀵規煇涓綾籜ML 璁捐鍑哄簲鐢ㄧ▼搴忔帴鍙c傝繖鏍風鍚堟煇縐岲TD 鐨刋ML 鏂囨。閮藉彲浠ヨ搴旂敤紼嬪簭瑙f瀽錛屼篃鍙互鐢―TD 鍒跺畾鑷繁鐨勬枃妗h鍒欙紝鑰岃繖涓鍒欏彲琚叾瀹冨簲鐢ㄧ▼搴忓埄鐢ㄣ侱TD 鏈変袱縐嶆柟娉曞0鏄嶺ML鏂囦歡錛?

(1) 澶栭儴 DTD 澹版槑濡備笅錛?

<!DOCTYPE peopleinfo SYSTEM "People.dtd">


(2) 鍐呴儴 DTD 澹版槑(PeopleDTD.xml)濡備笅錛?

<? xml version="1.0" encoding="GB2312"?>
<! DOCTYPE PeopleInfo[
<! ELEMENT PeopleInfo(People+)>
 <!ELEMENT People(Peoplename, PeopleSex,PeopleAge)>
   <! ELEMENT PeopleName(#PCDATA)>
   <! ELEMENT PeopleSex(#PCDATA)>
   <! ELEMENT PeopleAge(#PCDATA)>
  <! ATTLIST People PeopleId CDATA #REQUIRED>
 ]>
<PeopleInfo>
<People PeopleId="YOUR">
   <PeopleName> 鍙よ懀 </PeopleName>
   <PeopleSex>   鐢? </PeopleSex>
   <PeopleAge>   23  </PeopleAge>
</People>
<People PeopleId="SHEN">
   <PeopleName> 鐜嬪啝 </PeopleName>
   <PeopleSex>   濂? </PeopleSex>
   <PeopleAge>   25  </PeopleAge> 
 </People>
 </PeopleInfo>


浠庝笂闈㈢殑鏂囦歡鍙互鐪嬪埌鍐呭祵鐨凞TD 鍦?ccid_code><! DOCTYPE> 鏍囪涓傞鍏堝0鏄庣殑鏄疿ML 鏂囨。鐨勬牴鍏冪礌<PeopleInfo>錛岀劧鍚庢寚鏄庡湪<PeopleInfo>鏍瑰厓绱犱腑蹇呴』鍖呭惈鏈変竴涓垨鏄涓殑<People>鍏冪礌(鐢≒eople+ 琛ㄧず)銆備笅涓鍙ュ畾涔変簡鍦?ccid_code><People>鍏冪礌涓繀欏誨寘鍚?ccid_code><PeopleName>銆?lt;PeopleSex>鍜?lt;PeopleAge>3涓厓绱犮傝繖3涓厓绱犵殑鍐呭綾誨瀷涓?PCDATA錛岃〃紺哄唴瀹逛負鏂囨湰綾誨瀷銆傜劧鍚庢槸瀵瑰睘鎬х殑瀹氫箟錛岃〃紺篜eopleInfo 蹇呴』鍚湁PeopleId 灞炴с?REQUIRED(蹇呴』鍚湁)榛樿鐨勫彲浠ョ渷鐣ワ紝CDATA 琛ㄧず灞炴у兼槸瀛楃涓插瀷銆?

瑕佹楠屼竴涓猉ML 鏂囦歡鏄惁鏈夋晥闇瑕佸湪瑙f瀽XML 鏂囦歡鏃舵楠屽叾鏄惁鏈夋晥銆傞鍏堝湪鍒涘緩DocumentBuilder 瀵硅薄涔嬪墠錛屽埄鐢ㄨ鍙ヨ緗湁鏁堟ф楠岋紝璇彞濡備笅錛?

dbf.setValidating(true);//璁劇疆瀵筙ML 鏂囦歡榪涜鏈夋晥楠岃瘉


鍥犱負SAX 鍦ㄨВ鏋怷ML 鏂囦歡鏃訛紝閬囧埌涓嶇鍚圖TD瑙勫畾鐨勫湴鏂硅瑙﹀彂鐩稿簲鐨勪簨浠訛紝鎵浠ヨ繕瑕佸湪紼嬪簭涓畾涔夊疄鐜頒簡浜嬩歡鎺ュ彛鐨勭被銆傚湪榪欓噷鐢ㄧ殑鏄父鐢ㄧ殑澶勭悊浜嬩歡鐨勯潤鎬佸唴閮ㄧ被錛屽湪姝ょ被涓繀欏誨疄鐜扮殑鏂規硶璇彞濡備笅錛?

public void warning(SAXParseException spe) throws SAXExcepton
public void error(SAXParseException spe) throws SAXExcepton
public void fatalError(SAXParseException spe) throws SAXExcepton


涓嶅悓綰у埆鐨勯敊璇簨浠跺皢鍒嗗埆瑙﹀彂榪?涓柟娉曚腑鐨勪竴涓?

鍦↖sXMLAvailableDTD.java 涓紝鎻愪緵浜嗗XML 鏂囨。榪涜鏈夋晥鎬ф楠岀殑婧愮▼搴忋備粠涓彲浠ョ湅鍒癝AX浜嬩歡椹卞姩鐨勮В鏋怷ML紼嬪簭鐨勭紪鍐欐柟寮廻ttp:銆?

鑻辨槑 2006-11-22 17:21 鍙戣〃璇勮
]]>
Java&XML鏁村悎絎旇(涓)http://www.tkk7.com/wiser/archive/2006/11/22/82828.html鑻辨槑鑻辨槑Wed, 22 Nov 2006 09:17:00 GMThttp://www.tkk7.com/wiser/archive/2006/11/22/82828.htmlhttp://www.tkk7.com/wiser/comments/82828.htmlhttp://www.tkk7.com/wiser/archive/2006/11/22/82828.html#Feedback0http://www.tkk7.com/wiser/comments/commentRss/82828.htmlhttp://www.tkk7.com/wiser/services/trackbacks/82828.htmlhttp://tech.ccidnet.com/art/294/20021120/31320_1.html)

XML(eXtensible Markup Language錛屽彲鎵╁睍鐨勬爣璁拌璦)鏄竾緇寸綉鑱旂洘錛圵3C錛夊垱寤虹殑涓緇勮鑼冿紝鐢ㄤ簬鍦╓eb涓婄粍緇囥佸彂甯冨悇縐嶄俊鎭傚畠涓嶄粎鍙互婊¤凍榪呴熷闀跨殑緗戠粶搴旂敤鐨勯渶姹傦紝榪樿兘澶熺‘淇濈綉緇滆繘琛屼氦浜掓搷浣滄椂鍏鋒湁鑹ソ鐨勫彲闈犳т笌浜掓搷浣滄с?

XML鐨勮娉曠被浼糎TML錛岄兘鏄敤鏍囩鏉ユ弿榪版暟鎹殑銆侶TML鐨勬爣絳炬槸鍥哄畾鐨勶紝鎴戜滑鍙兘浣跨敤錛屼笉鑳戒慨鏀廣俋ML鍒欎笉鍚岋紝瀹冩病鏈夐鍏堝畾涔夊ソ鐨勬爣絳懼彲浠ヤ嬌鐢紝鑰屾槸渚濇嵁璁捐涓婄殑闇瑕佽嚜琛屽畾涔夋爣絳俱俋ML鏄竴涓厓璇█錛屾牴鎹笉鍚岀殑琛屼笟鍜岃涔夛紝鍙互媧劇敓鍑鴻璁稿澶氱殑鍗忚鍜岃鑼冦傜洰鍓嶇殑鍩烘湰鍗忚鏈塜SL銆乆Link/Xpointer銆乆path銆乆HTML銆丼chema絳夈備笉鍚岀殑琛屼笟鍜岄鍩熼兘鍙互鍒跺畾鑷繁鐨刋ML瑙勮寖錛岀敤浜庢í鍚戝拰綰靛悜鐨勪俊鎭氦嫻佸拰鏁版嵁浼犺緭銆俋ML瑙勮寖鏈夊ぇ鏈夊皬錛屽ぇ鐨勫彲浠ヤ負鍏ㄤ笘鐣岃寖鍥村唴鐨勫晢鍔℃暟鎹埗瀹氭牸寮忥紝鍍廵bXML銆丅iztalk銆乪Co錛涘皬鐨勬湁涓撻棬鐢ㄤ簬鐢靛瓙閽卞寘鐨凟CML錛屾湁涓烘暟瀛﹀埗瀹氱殑MathML錛涜繕鏈変負澶氬獟浣撴暟鎹悓姝ョ殑SMIL錛屽儚XSL鏄笓闂ㄧ敤浜庢樉紺虹殑錛屽畠鍒跺畾浜嗚澶氭湁鏄劇ず璇箟鐨勬爣絳撅紱鑰孹Link鏄弿榪版枃妗d箣闂村叧緋葷殑璇█銆傚儚Micrsoft 鐨凜DF(Channel Definition Format)鎺ㄩ侀閬撯淧USH鈥濇妧鏈簲鐢ㄣ乄ML(Wireless Market Language)鏃犵嚎鍟嗗姟搴旂敤絳夌瓑閮芥槸XML鎶鏈殑鍏蜂綋搴旂敤銆俋ML緇欏熀浜嶹eb鐨勫簲鐢ㄨ蔣浠惰祴浜堜簡寮哄ぇ鐨勫姛鑳藉拰鐏墊椿鎬э紝鍥犳瀹冪粰寮鍙戣呭拰鐢ㄦ埛甯︽潵浜嗚澶氬ソ澶勩傚埄鐢╔ML鐢ㄦ埛鍙互鏂逛究鍦拌繘琛屾湰鍦拌綆楀拰澶勭悊銆俋ML鏍煎紡鐨勬暟鎹彂閫佺粰瀹㈡埛鍚庯紝瀹㈡埛鍙互鐢ㄥ簲鐢ㄨ蔣浠惰В鏋愭暟鎹茍瀵規暟鎹繘琛岀紪杈戝拰澶勭悊銆備嬌鐢ㄨ呭彲浠ョ敤涓嶅悓鐨勬柟娉曞鐞嗘暟鎹紝鑰屼笉浠呬粎鏄樉紺哄畠銆俋ML鏂囨。瀵硅薄妯″紡(DOM)鍏佽鐢ㄨ剼鏈垨鍏跺畠緙栫▼璇█澶勭悊鏁版嵁錛屾暟鎹綆椾笉闇瑕佸洖鍒版湇鍔″櫒灝辮兘榪涜銆俋ML鍙互琚埄鐢ㄦ潵鍒嗙浣跨敤鑰呰鐪嬫暟鎹殑鐣岄潰錛屼嬌鐢ㄧ畝鍗曠伒媧誨紑鏀劇殑鏍煎紡錛屽彲浠ョ粰Web鍒涘緩鍔熻兘寮哄ぇ鐨勫簲鐢ㄨ蔣浠躲?

XML鏍稿績鍔熻兘鐨勬湁鍏崇壒鎬у拰瑙勮寖濡備笅錛?

1. 鏍煎紡鑹ソ鐨?Well-Formed)XML鏂囨。錛?

2. 鏂囨。綾誨瀷瀹氫箟(DTD)錛?

3. XML浣跨敤鏍峰紡鈥擟SS(Cascading Style Sheet錛屽眰鍙犳牱寮忚〃鍗?鍜孹SL(eXtensible Style Language錛屽彲鎵╁睍鏍峰紡璇█)錛?

4. 鏂囨。瀵硅薄妯″瀷(DOM)鈥擷ML緙栫▼鎺ュ彛錛?

5. XML 綆鍗旳PI(SAX)鈥擷ML緙栫▼鎺ュ彛錛?

6. XML 鍛藉悕絀洪棿(Namespace)鍜屾ā寮?Schema)錛?

7. 閾炬帴(XLink)鍜屾煡璇紱

8. XPath(XML Path Language) 鍜?XPointer(XML Pointer Language)錛?

9. 杞崲XML鈥擷SL鍜孹SLT(XSL Transformation)錛?

10. XML 鍜屾暟鎹簱錛?

11. 鐢ㄤ簬鏈嶅姟鍣ㄥ崗璁?XML-RPC銆丼OAP(Simple Object Access Protocol錛岀畝鍗曞璞¤闂崗璁?鍜學DDX(Web Distributed Data Exchange錛屽垎甯冨紡Web 鏁版嵁浜ゆ崲)銆?

XML 鏄竴縐嶅叿鏈夋弿榪版暟鎹姛鑳界殑璇█錛屽畠鍗佸垎閫傚悎浣滀負鐭ヨ瘑琛ㄧず璇█鎴栦綔涓虹粍浠跺強鏂囦歡鏍煎紡鐨勮〃紺烘柟娉曘傚畠榪樺彲浠ヨ鏁版嵁鍦ㄤ笉鍚岀殑鏉ユ簮涓紝鏍規嵁閫氱敤鐨勮娉曡鍒欐潵澶勭悊銆傝孞ava鍒欐槸鐢ㄤ簬Internet銆侀傚悎浜庡垎甯冨紡鐜銆佹彁渚涗簡涓涓法騫沖彴鐨勮璦銆俋ML鍜孞ava鐩哥粨鍚堜富瑕佸師鍥犳槸鍩轟簬XML鐨勮娉曟彁渚涗簡涓縐嶇伒媧葷殑銆佹爣鍑嗙殑銆佸仴澹殑Java緙栫▼鏂規錛屽悓鏃訛紝Java涔熷皢涓縐嶆櫘閬嶇殑璇箟闆嗗悎搴旂敤浜嶺ML鏁版嵁銆傛棦鐒禞ava鍜孹ML閮芥槸鍙Щ妞嶇殑鏍囧噯錛岃繖涓ょ鎶鏈粨鍚堢殑緇撴灉涔熸槸鍙Щ妞嶇殑錛屽彲浠ラ噸鐢ㄦ暟鎹拰縐繪琛屼負銆傚崟鐙嬌鐢╔ML鎴朖ava鎵鑳借幏寰楃殑鎵鏈夋綔鍔涜繕娌℃湁琚畬鍏ㄦ帉鎻★紝灝嗗畠浠粨鍚堝氨璧拌繘浜嗕竴涓法澶х殑銆佹柊鐨勫浗搴︺傚皢XML搴旂敤浜嶫ava鐨勪袱涓富瑕佺殑搴旂敤鏄潰鍚戣〃紺虹殑鍑虹増涓氬拰浼佷笟涓潰鍚戞秷鎭殑涓棿浠舵妧鏈?

Java鍜孹ML鏄湪涓轟笉鍚屽鎴峰紑鍙慦eb紼嬪簭鏃跺艦鎴愬緱鑷劧鐨勫尮閰嶃備粠浼犵粺鐨勭數璇濆埌鏈鏂扮殑鏅鴻兘鍐扮錛屽埄鐢ㄥ拰浜х敓鐨勪俊鎭兘鏄湪涓嶅悓鐨勭郴緇熷鉤鍙扮殑鏈嶅姟鍣ㄤ笂浜ゆ崲銆俋ML鍜孞ava鐨勬柟渚挎у拰鍙歡灞曟т嬌瀹冧滑鍦ㄦ柊鐨刉eb涓婂叿鏈夋洿澶氱殑鍔熻兘錛?

1. 緇撴瀯鍖栤斿緩绔嬫湁浠諱綍澶嶆潅灞傛鐨勬暟鎹ā鍨嬶紱

2. 鍙墿灞曟р旀牴鎹渶瑕佸畾涔夋柊鐨勬爣蹇楋紱

3. 楠岃瘉鈥旀鏌ユ暟鎹湪緇撴瀯涓婄殑姝g‘鎬э紱

4. 鐙珛涓庡獟浠嬧斾互澶氱鏂瑰紡鍙戝竷鍐呭錛?

5. 鐙珛浜庝緵搴斿晢鍜屽鉤鍙扳斾嬌鐢ㄦ爣鍑嗙殑鍟嗕笟杞歡錛岀敋鑷蟲枃鏈伐鍏峰鐞嗕換浣曠鍚?XML鏍囧噯)鐨勬枃妗c?

涓婅堪榪欎簺鍔熻兘浣垮緱XML鎶鏈鏈熸湜緇欓潰鍚戠綉緇滅殑搴旂敤錛岀壒鍒槸鍦ㄦ暟鎹氦鎹㈤鍩熷甫鏉ラ潻鍛芥х殑褰卞搷銆侸ava 涓嶺ML涓璧蜂嬌寰楁柊涓浠eb搴旂敤鎴愪負鍙兘銆?

Java XML Pack 鐨勭敱鏉?/strong>


鍥犱負XML鐨勪俊鎭紪鐮佸鏄撻槄璇匯佸鐞嗗拰浜х敓錛屾墍浠ュ湪璁稿淇℃伅浜ゆ崲涓璛ML鏄竴縐嶉閫夌殑鎶鏈侸ava鍙互璁や負鏄疿ML鐨勨滃悓浜嬧濓紝鍥犱負榪欎袱縐嶈璦閮芥湁鐩稿悓鐨勫巻鍙茶儗鏅?C++銆?SGML)錛岄兘鍏鋒湁綆鍗曟с佹柟渚挎у拰鍙Щ妞嶆э紝騫朵笖閮界戶緇湪宸ヤ笟涓娿佸鏈笂寮鍙?W3C銆丣CP)銆?鐞嗘墍褰撶劧Java鍦ㄦ湇鍔″櫒鍜屽鎴風鐨刋ML紼嬪簭寮鍙戜笂鎴愪負涓縐嶉閫夎璦銆?

Java 杞歡騫沖彴涓轟簡寤虹珛鍩轟簬XML鐨勭▼搴忓凡緇忓叏闈㈠湴鏀墮泦浜咥PI鏍稿績瑙勮寖錛屽叿浣撴湁6涓?JDK1.4)銆傚畠浠垎鍒槸JAXP (Java API for XML Processing) 銆丣AXB (Java Architecture for XML Binding) 銆丣AXM (Java API for XML Messaging)銆丣AX-RPC (Java API for XML-based RPC)銆丣AXR (Java API for XML Registries)銆丣DOM (Java DOM)銆傜畝浠嬪涓嬶細

1錛嶫AXP鏀寔浣跨敤 DOM銆?SAX鍜孹SLT澶勭悊XML鏂囨。銆侸AXP鍏佽紼嬪簭鍒嗘瀽鍜岃漿鎹ML 鏂囨。鐙珛浜庝竴涓壒孌婄殑 XML 澶勭悊榪涚▼銆傛牴鎹▼搴忕殑闇瑕侊紝寮鍙戣呬滑鍙互鏈哄姩鍦頒笌XML澶勭悊鏈洪棿浜ゆ崲鑰屼笉鐢ㄦ敼鍙樼▼搴忎唬鐮併傝繖鏍鳳紝紼嬪簭鍜屽伐鍏峰紑鍙戣呬滑鑳藉蹇熷拰瀹規槗鍦板啓鍑哄彲浠ユ敮鎸乆ML鐨凧ava搴旂敤紼嬪簭銆?

JAXP鍙傛暟鐨勫疄鐜板寘鎷竴涓敮鎸丼AX鍜孌OM鐨勩侀珮璐ㄩ噺鐨勮В鏋愬櫒鍜屼竴涓敮鎸乆SLT鐨勮漿鎹㈠紩鎿庛傛渶鏂扮殑鐗堟湰JAXP 1.1鍏佽浣跨敤鏈榪戠殑 SAX-2鍜?DOM level 2錛?鍚屾牱瀹冧篃鍖呮嫭涓涓熀浜嶵rAX妗嗘灦 (涓篨ML杞崲API)鐨刋SLT銆?鑰屾渶鍒濈殑鐗堟湰JAXP 1.0鏀寔 SAX-1 鍜?DOM level 1銆侸AXP 1.1灝嗘潵鍙綋浣滀竴涓敤浜嶫DK 1.1.8鍜屾洿楂樺鉤鍙扮殑銆佸彲閫夋嫨鐨勫寘錛屼篃璁稿皢鏉ヨ繕浼氬寘鎷湪 J2SE錛圝ava 2 Platform Standard Edition錛?1.4鍜孞2EE錛圝ava 2 Platform Enterprise Edition錛?.3 涓?

2錛嶫AXB 鎻愪緵浜嗕竴涓狝PI宸ュ叿錛屽畠鍙互鑷姩鍦板湪XML鏂囨。鍜孞ava瀵硅薄闂村緩绔嬫槧灝勩侸AXB鍙互浣縓ML鏂逛究浣跨敤緙栬瘧榪涗竴涓猉ML璁″垝鐨勪竴涓垨澶氫釜綾匯傚凡緇忎駭鐢熺殑綾繪彁渚涙墍鏈夌殑鏈夊叧XML瑙f瀽鍜屾牸寮忕殑緇嗚妭錛屽畠浠兘淇濊瘉鍦ㄨ鍒掍腑鐨勫己鍒剁害鏉熸湁鏁堛傚湪璁稿浜嬩歡閲岋紝浣跨敤涓涓猄AX(Simple API for XML)瑙f瀽鍣ㄦ垨鎵ц涓涓狣OM(Document Object Model) API鏄潪甯告湁鏁堢殑銆侸AXB 1.0 灝嗕細鎴愪負涓涓狫ava 2騫沖彴鐨勫彲閫夋嫨鎬х殑鍖呫?

3錛嶫AXM 鐨勫彲閫夋嫨鍖呭厑璁哥▼搴忓彂閫佸拰鎺ユ敹鐢ㄧ函Java API瀵煎悜XML鐨勬枃妗c?JAXM宸ュ叿鐨凷OAP錛圫imple Object Access Protocol錛?1.1鍙婂叾闄勪歡鍙嬌寮鍙戣呰兘闆嗕腑浜庝負瀹冧滑鐨勭▼搴忓緩绔嬨佸彂閫併佹帴鏀跺拰鍒嗚В淇℃伅鍖咃紝榪欐牱灝變唬鏇夸簡浣庡眰嬈$殑XML閫氫俊紼嬪簭銆?

榪欎釜鐗堟湰鐨凧AXM瑙勮寖鍖呮嫭Messaging Profiles姒傚康銆傚畠鐨勭洰鐨勫氨鏄負浜嗗緩绔嬩竴涓熀紜錛屼嬌涔嬪彲鏀寔涓綾婚珮灞傛鍩轟簬鏍囧噯鐨勪俊鎭崗璁?涓涓狿rofile鐨勪緥瀛愬氨鏄墽琛宔bXML 鐨勪紶杈撱佽礬鐢卞拰鎵撳寘鐨勪俊鎭鐞嗘湇鍔★紝鎴栬呭熀浜嶫AXM 鐨刉3C 鐨刋MLP銆傚洜姝わ紝Java鎶鏈紑鍙戣呬滑鍦ㄤ嬌鐢↗AXM 鏃訛紝灝嗘湁鎸傛帴XML淇℃伅鐨勮兘鍔涖?

榪欎簺楂樺眰嬈$殑鍗忚甯稿父鍦ㄥ熀鏈殑鍩轟簬SOAP淇℃伅涔嬪錛屽疄鐜頒竴浜涢澶栫殑鍔熻兘銆傝繖涓澶栫殑鍔熻兘瀵逛俊鎭殑瀹夊叏鎬с佸彲鍗囩駭鎬у強瀹屾暣鎬х粡甯告槸鏈夌敤鐨勩?

JAXM 1.0 灝嗗彲褰撲綔涓涓彲閫夋嫨鐨勫寘鐢ㄤ簬J2SE銆?

4.JAX-RPC涓哄熀浜嶳PC鍗忚鐨勬爣鍑哫ML鎻愪緵浜嗕竴涓嫭绔嬩紶杈撶殑API銆侸AX-RPC 1.0 灝嗗彲褰撲綔涓涓彲閫夋嫨鐨勫寘鐢ㄤ簬J2SE銆侸AX-RPC 灝嗘潵涔熻浼氬寘鎷琂2SE鍙戣鐗堟垨鑰匤2EE銆侸AX-RPC 鏈榪戣 Executive Committee of the Java Community ProcessSM 璁ゅ彲錛屽茍涓斿凡緇忓緩绔嬭搗涓撳緇勩?JAX-RPC 瑙勮寖灝嗕綔涓?JSR-101琚敤浜庡紑鍙?JCP 榪涚▼銆?

5.JAXR鎻愪緵涓涓粺涓鍜屾爣鍑嗙殑 Java API 鏉ヤ紶閫掍笉鍚岀綾葷殑XML Registries銆?XML Registries 鑳藉寤虹珛銆侀厤緗拰鍙戠幇Web鏈嶅姟鍣ㄣ?

鐜板湪鐨刋ML Registries瑙勮寖鏈塈SO 11179銆丱ASIS銆?eCo Framework銆?ebXML 鍜?UDDI銆?JAXR API 鍏佽 Java 紼嬪簭鍛橀氳繃涓嶅悓鐨刋ML Registries浣跨敤涓涓畝鍗曘佸鏄撲嬌鐢ㄧ殑鎶借薄API銆侸AXR API鐨凧AXR 淇℃伅妯″紡浣垮畠鏂逛究鍦╔ML registries涓褰曞唴瀹瑰拰鏁版嵁銆?

JDK1.4鐨凧AXR API瑙勮寖鍖呮嫭鍦↗AXR淇℃伅妯″紡鍚宔bXML Registry 鍜?UDDI Registry瑙勮寖闂村緩绔嬬殑緇嗚妭銆?

JAXR API 宸ヤ綔鍦ㄤ笌Java APIs for XML鐩稿叧鐨勬牳蹇冭鑼冧笂錛屾瘮濡傝 JAXP銆丣AXB銆?JAX-RPC 鍜?JAXM, 浠ュ厑璁?Web 鏈嶅姟鍣ㄥ寘鍚獼2EE騫沖彴銆?

JAXR 1.0 灝嗗綋浣滀竴涓彲閫夋嫨鐨勫寘鐢ㄤ簬J2SE錛屽皢鏉ヤ篃璁鎬細鍖呮嫭鍦↗2EE涓?

6.JDOM鏄竴縐嶉潰鍚慗ava 鐨勮銆佸啓鍜屾搷浣淴ML 鏂囨。鐨凙PI銆侸DOM 涓庣幇琛岀殑SAX 鍜孌OM鏍囧噯鍏煎錛屼負Java 紼嬪簭鍛樻彁渚涗簡涓涓畝鍗曘佽交閲忕殑XML 鏂囨。鎿嶄綔鏂規硶銆傞渶瑕佹寚鍑虹殑鏄疛DOM鏄笓闂ㄤ負Java 紼嬪簭鍛樺紑鍙戠殑錛屾墍浠ラ噰鐢ㄨ澶欽ava 璇█鐨勪紭縐鐗規э紝姣斿鏂規硶閲嶈澆銆侀泦鍚?Collections錛岃繖鏄湪Java2涓嚭鐜扮殑鏁版嵁鎿嶄綔綾誨瀷)鍜岀被鏄犲皠(Reflection)銆?

JDOM 鏄竴縐嶄嬌鐢╔ML 鐨勭嫭鐗笿ava 宸ュ叿鍖咃紝鐢ㄤ簬蹇熷紑鍙慩ML搴旂敤紼嬪簭銆傚畠鑳藉鏇挎崲org.w3c.dom 杞歡鍖呮潵鏈夎鍒掑湴鎿嶄綔XML 鏂囨。銆傚疄闄呬笂JDOM 鍜孌OM 鑳藉騫跺瓨銆?

鏍囧噯鐨?DOM 鏂囦歡鏄敱鏂囧瓧緇撶偣銆佸厓绱犵粨鐐廣佸鐞嗗懡浠ょ粨鐐瑰拰鍏跺畠璁稿鐨勭粨鐐圭粍鎴愮殑銆備笉榪囪繖浜涚粨鐐歸犳垚浜嗕竴涓澗鏁g殑DOM 瀵硅薄錛屼篃閫犳垚浜嗗簲鐢ㄤ笂鐨勫洶闅俱傜敱浜嶫DOM鍏鋒湁娌℃湁灞傛鎬х殑鐗圭偣錛屾墍浠ュ畠灝哫ML 鏂囦歡寤虹珛鎴愪竴涓狫ava 瀵硅薄錛岃繖縐嶆柟娉曡鍦↗ava 涓嬌鐢╔ML 鍙樺緱闈炲父鐨勫鏄擄紝鍚屾椂瑙e喅浜咲OM 搴旂敤涓婄殑鍥伴毦銆傚叾嬈★紝JDOM 閲囩敤綾婚┍鍔紝涓嶉渶瑕佸儚DOM 閭f牱榪涜宸ュ巶鍖栨帴鍙i厤緗紝鎵浠DOM 鐨勪嬌鐢ㄦ槸鐩存埅浜嗗綋鐨勩傜敱浜庝嬌鐢↗DOM瀵硅薄灝卞儚浣跨敤Document銆丒lement 鍜?Attribute 榪欎簺綾葷殑鐩存帴瀹炰緥錛屾墍浠ュ垱寤轟竴涓柊JDOM 瀵硅薄鍦↗ava 璇█涓氨鍍忎嬌鐢╪ew 鎿嶄綔絎︿竴鏍峰鏄撱?

Java 涓?XML 鐨勭粨鍚堝簲鐢?/strong>


寤虹珛涓涓壇鏋?Well-Formed)鐨刋ML 鏂囨。鍙婇獙璇佺殑瀹炰緥

瀵逛簬涓涓猉ML鏂囦歡鏄惁絎﹀悎Well-Formed 鎵瑙勫畾鐨勫悇欏筙ML 鍩烘湰璇硶錛屽繀欏誨熷姪XML 鍒嗘瀽鍣ㄦ潵鍔犱互媯鏌ャ傛瘮杈冨父瑙佺殑XML 鍒嗘瀽鍣ㄦ湁Xerces銆丣AXP 鍜孧SXML銆?

涓涓猉ML 鏂囨。鏄湁鏄庢樉鐗瑰緛鐨勩備笅闈㈡槸涓涓猉ML 鏂囨。鐨勫疄渚婸eople.xml錛屼唬鐮佸涓嬶細

<? xml version="1.0" encoding="GB2312"? >
<PeopleInfo>
<People PeopleId="YOUR">
    <PeopleName> 鍙よ懀 </PeopleName>
    <PeopleSex>   鐢? </PeopleSex>
    <PeopleAge>   23  </PeopleAge>
</People>
<People PeopleId="SHEN">
    <PeopleName> 鐜嬪啝 </PeopleName>
    <PeopleSex>   濂? </PeopleSex>
    <PeopleAge>   25  </PeopleAge> 
</People>
</PeopleInfo>



鑻辨槑 2006-11-22 17:17 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲国产成人超福利久久精品| 香港a毛片免费观看 | 亚洲人成无码网站久久99热国产| 又黄又大又爽免费视频| 亚洲一区精品伊人久久伊人| 国产V亚洲V天堂无码| 亚洲成人网在线观看| 亚洲经典千人经典日产| 一区二区三区视频免费| 免费国产在线视频| 中文字幕无码视频手机免费看| 国产免费人人看大香伊| 国产av无码专区亚洲av桃花庵| 亚洲一卡2卡4卡5卡6卡残暴在线| 国产亚洲美女精品久久久久| 在线观看免费无码专区| 亚洲国产一区在线观看 | 国产亚洲美女精品久久| 国产精品1024在线永久免费| 91大神免费观看| 精品国产免费一区二区| 亚洲色欲久久久综合网东京热| 亚洲精品偷拍无码不卡av| 亚洲heyzo专区无码综合| 国产在线精品一区免费香蕉 | 91精品国产免费入口| 国产无遮挡吃胸膜奶免费看| 久久久久久亚洲精品中文字幕| 亚洲国产熟亚洲女视频| 国产精品福利片免费看| 免费无码AV电影在线观看| 亚洲人成色77777在线观看大| 亚洲欧洲校园自拍都市| 一级毛片免费在线观看网站| 99久久久国产精品免费无卡顿| 亚洲日韩国产成网在线观看| 亚洲毛片免费视频| 亚洲精品黄色视频在线观看免费资源| 黄页网站免费观看| 久久久久亚洲精品无码系列| 免费亚洲视频在线观看|