91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SDO for Java規范(一)——架構

發布時間:2020-08-19 00:05:10 來源:ITPUB博客 閱讀:247 作者:94nidaye 欄目:編程語言
作者 高科技文盲[@more@]

SDO for Java規范(一)——架構

數據對象是SDO框架的核心。數據對象是一個業務對象的一般表達,并且沒有和特殊的持久化存儲機制綁定。

數據圖是一個相關數據對象的集合。在SDO1.0里,一個數據圖總是被一個DataGraph信封對象所包裝,而在SDO2.0里,數據對象圖可以存在于DataGraph之外。(數據圖)Data graph作為兩個單詞分開使用時,指任何一個數據對象集合;(數據圖)DataGraph作為一個單一單詞使用時,特指一個DataGraph信封對象。

所有數據圖都有一個單一的根數據對象,它直接或間接的包含圖里的所有其它數據對象。當的數據圖里的所有數據對象僅僅引用自身的數據對象時,我們稱該數據圖是封閉的。封閉是一個數據圖的標準狀態。

一個數據圖由以下組成:

  • 一個單一的根數據對象。
  • 通過對根數據對象屬性的遞歸檢索到的所有可達的數據對象。

一個封閉的數據圖形成了一個數據對象的樹形結構。數據圖能夠記錄跟蹤描述數據對象的模式。數據圖同樣也可以維護一個更改概要(ChangeSummary),ChangeSummary表達了施加于該圖數據對象之上的更改。

SDO for Java規范(一)——架構

1,數據圖包含數據對象

對于終端用戶而言,訪問數據圖的標準方式是通過數據訪問服務(DAS)。DAS提供了從庫中加載數據圖和將數據圖保存回庫中的方法。例如,一個XML文件DAS將加載和保存一個數據圖為XML文件,一個JDBC DAS將使用一個關系數據庫加載和保存一個數據圖。針對其它特殊的DAS的規范超出了本規范的范圍。

經典的DAS使用了一個非連接的數據架構,客戶端除了在讀寫數據圖時,均和DAS保持一個非連接的狀態。因而,一個使用數據圖的典型場景涉及以下步驟:

  • 終端用戶發送一個加載數據圖的請求給DAS
  • DAS啟動一個持久庫上的事務去接收數據,創建一個表達該數據的數據圖,并且結束這個事務。
  • DAS返回一個數據圖給一個終端用戶應用。
  • 終端用戶應用處理數據圖。
  • 終端用戶應用使用修改后的數據圖調用DAS
  • DAS基于終端用戶對數據的修改,啟動一個新的事務更新持久庫中的數據。

SDO for Java規范(一)——架構

2 SDO的非連接數據結構

注意有兩個特別的角色能夠能夠用來區分數據對象用戶:客戶和DAS writer

客戶需要能夠縱覽整個數據圖去訪問每一個數據對象并且能夠獲取和設置每一個數據對象域的能力。客戶也需要序列化和反序列化一個數據圖。如使用XML DAS時,數據圖能夠被序列化一個XML

DAS writer必須能夠為數據圖定義一個模型,創建一個新的數據圖,產生更改歷史信息,并且能夠訪問更改歷史信息。

一個數據圖包含一個(更改概要)ChangeSummary,通過ChangeSummary,能夠訪問數據圖中任何一個數據對象的更改歷史。當DAS返回一個數據圖時,ChangeSummary應該是空的。如果DAS的客戶修改了數據對象的狀態,例如創建或者刪除,這些更改的概要將被記錄在ChangeSummary中。

如果一個客戶端將一個修改后的數據圖發送給DASDAS將會進行數據圖的錯誤性檢查,這些錯誤主要包括數據圖是否缺少封閉,屬性值是否越界,由樹形子圖生成的屬性或數據對象的選擇,不同的約束或者任何針對DAS的特殊限制(如XML模式的特殊校驗)。這里,封閉(Closure)指任何一個該數據圖的數據對象的引用均指向自身內部的一個對象。通常,DAS使用異常報告更新的問題。

一個數據圖可能沒有封閉,此時,終端用戶可以臨時通過數據對象接口修改該數據圖所包含的數據對象。然而在所有的用戶操作完成后,數據圖將重建一個封閉。DAS只能操作帶有封閉的數據圖。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

满洲里市| 驻马店市| 莆田市| 鞍山市| 巨野县| 平江县| 来凤县| 济阳县| 鹤岗市| 唐山市| 都江堰市| 桂平市| 天镇县| 淮阳县| 玉田县| 巴彦淖尔市| 翼城县| 海兴县| 隆林| 鄂托克旗| 锦州市| 微博| 弥渡县| 美姑县| 宜州市| 牡丹江市| 安吉县| 松原市| 商南县| 垦利县| 夏津县| 海晏县| 彭泽县| 时尚| 峡江县| 仁布县| 青田县| 仁寿县| 梨树县| 定南县| 新津县|