從 XML 綱目檔產生 Java Bean 的連結資料規則

本節說明用來從 XML 綱目產生 Bean 的規則。這些規則僅適用於 DOM 型的 XSD Bean 產生器(已棄用)。

複式類型

XML 綱目檔層次的複式類型會對映至 ComplexType 子類別的 Bean。 複式類型的每一個子元素都會依照元素區段中說明的方式來對映。

元素

元素會產生 set、get 和 remove 方法。set 方法會將元素設為指定的值。如果元素仍不存在,它會建立這個元素。get 方法會傳回元素值。remove 方法會移除母項中的元素。set 方法的參數和 get 方法的傳回結果會視元素類型而定。請考量下列複式類型 Items:

<complexType name="Items"><sequence> 
		<element name="PartNum" type="string">
		<element name="address" type="Address">
		<element name="item">
<complexType>
  <sequence> 
			<element name="productName" type="String">
	</sequence>
	</complexType> 
	</element>
<element name="price">
	<simpleType base="float">
	<restriction>
	<maxExclusive="1000"/>
	</restriction>
 	</simpleType>
</element>
</sequence>
</complexType>
類型為 String 的 PartNum 元素,其 get、set 和 remove 等方法如下所示:
public void setPartNum(String partNum);
 public String getPartNum();
 public boolean removePartNum();
類型為 Address 的 address 元素,其 get、set 和 remove 等方法如下所示:
public void setAddress(Address address)
public Address getAddress();
public boolean removeAddress();

本節後面的資料類型表會顯示內建 XML 綱目資料類型至 Java™ 資料類型的對映。

如果元素類型是匿名複式類型,則匿名複式類型會產生為內部類別。

內部類別會含有其內容的對應 get、set 和 remove 方法。 在前述範例中,會產生內部類別 Items.item。 item 的 get、set 和 remove 等方法如下所示:

public void setItem(Items.item item);
 public Items.item getItem();
public boolean removeItem();

如果某元素的 maxOccurs 屬性設為 unbounded,就會產生另一個 getXXXCount() 方法。get、set 和 remove 方法會有另一個索引參數,用來指定我們要處理的特定元素。如果我們依照下列方式,修改上述 item 元素來新增 maxOccursattribute:

<element name="item" minOccurs="1" maxOccurs="unbounded">

這會產生下列方法:

public void setItem(int index, Items.item item);
public Items.item getItem(int index);
public int getItemCount();
public boolean removeItem(int index);

屬性

attribute 元素會產生一個 set、get 和 remove 方法。set 方法會將屬性設為指定的值。如果屬性不存在,它會建立這個屬性。get 方法會傳回屬性值。remove 方法會移除母元素中的屬性。set 方法的參數及 get 方法的傳回結果以屬性類型為基礎。

廣域元素

XML 綱目檔案層次的廣域元素會對映至下列其中一種類型的 Bean:

比方說,下列 purchaseOrder 廣域元素就是 PurchaseOrder 複式類型的實例。

<element name="puchaseOrder" type="PurchaseOrderType">將會產生 purchaseOrder 類別。purchaseOrder 類別繼承產生 Bean PurchaseOrderType,這個 Bean 又繼承 ComplexType。

簡式類型

XML 綱目檔層次的簡式類型會對映至 SimpleType 子類別的 Bean。

資料類型

如果可能的話,會利用對應的 Java Developer Kit 類別將 XML 綱目內建資料類型對映至 Java 資料類型。下表彙總資料對映。 任何沒有列出的 XML 綱目資料類型都會對映為 String

XML 綱目類型 Java 資料類型
string String
integer、int、nonPositiveInteger、nonNegativeInteger、positiveInteger、 negativeInteger、unsignedLong、unsignedInt int
Boolean Boolean
float float
double double
long long
short, unsignedShort short
byte, unsignedByte byte
date Date

組織架構

com.ibm.etools.xmlschema.beans 套件含有產生的 Bean 所用的若干組織架構類別。如下所示:

相關工作
從 XML 綱目產生 Java Bean
使用條款 | 讀者意見
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.