我們有一個使用POST的ReST Web服務 - 將數據插入數據庫(取消XML數據)和GET檢索數據(編組爲XML)。使用XML和XSD映射數據庫的最佳實踐
XSD用於生成Java對象(通過Sun的JAXB編譯器),以便將數據收集到數據庫或從數據庫收集數據。 我們種凍結了這個XSD,因爲我們認爲這個模型完美的數據 - 它的確如此,但是只能發佈數據。
現在時間到了GET來自數據庫的數據,我發現自己不得不「破壞」我們當前的XSD,並允許它發佈POST類型請求不關心的主鍵和其他數據值,它們是多餘的。
所以 - 實際上XSD現在有可選的元素(即那些只用於GET請求的元素)。當您必須向想要使用您的Web服務的第三方解釋時,這可能會導致潛在的混淆,並且您有此XSD在獲取和發佈數據之間具有一種分離的個性。它也不像以前那樣感覺乾淨和優雅。
我該怎麼辦?在您的XSD中只有在某些情況下才會使用的元素(如獲取數據)可以嗎?或者我應該有2個XSD - 一個更詳細,爲GET請求量身定製,另一個量身打造,純粹用於POST請求?
您的幫助和建議 - 非常感謝。
你認爲它最清潔的解決方案 - 最佳? – Vidar 2009-06-08 18:17:38