事務腳本模式:一個過程來控制邏輯 |
||||
模式 |
模式含義 |
運行機制 |
使用時機 |
歸類 |
Active Record |
包裝數據庫表或視圖中的行、封裝數據庫訪問、並將業務邏輯 |
在簡單的應用中,領域模型和數據表有很好的對應的。可以這樣理解活動記錄(內存記錄),它是在行數據模型裏面逐漸添加領域邏輯的結果。 |
|
A |
Application Controller |
處理屏幕導航和應用流程的集中控制點。 |
|
JEE核心模式類似 |
|
Associate Table Mapping |
將關聯存儲爲表形式,並通過外鍵將與之相關的 |
|
|
|
Class Table Inheritance |
表示了類的繼承層次,每個類都對應一個表 |
字段只包括該類的字段 |
||
Client Session State |
將會話狀態存儲於客戶端 |
|
|
|
Coarse Grain Lock |
用一個鎖將一組相關對象都鎖起來 |
|
|
|
Concrete Table Inheritance |
表示了類的繼承層次,層次中的每一個具體類對 |
字段包括從父類集成的 |
||
Data Mapper |
由映射器組成的一個層次,它在對象和數據庫之間移動數據, |
用數據映射器來隔離領域模型和數據庫自己的關係。 |
領域模型複雜就應該使用了 |
A |
Data Transfer Object |
在進程間進行數據傳遞的對象,目的是減少進程間 |
|
|
|
Database Session State |
將會話狀態作爲提交的數據存儲於數據庫中 |
|
|
|
Dependent Mapping |
讓一個類爲一個子類進行數據庫映射。 |
|
|
|
Domain Model |
既包含行爲,又包含數據的領域的對象模型。 |
|
|
|
Embedded Value |
將一個對象映射到另一個對象的表的多個域中。 |
|
|
|
Foreign Key Mapping |
將對象間的一個關聯映射成表間一個外鍵引用。 |
|
|
|
Front Controller |
處理Web站點中所有請求的控制器。 |
|
|
|
Gateway(入口) |
封裝對外部系統或資源進行訪問的對象。 |
|
|
|
Identity Field(標識域) |
將數據庫ID域保存到對象中,用來維護一個內存對象與一個數據 |
|
|
|
Identity Map(標識映射) |
通過將每個被加載對象放入一個映射中,確保每個對象都被加載 |
|
|
|
Implicit Lock(隱含鎖) |
允許框架或層超類型申請離線鎖。 |
|
|
|
Inheritance Mappers(繼承映射器) |
組織數據庫映射器的一種結構,能處理繼承層次。 |
|
|
|
Layer Supertype(層超類型) |
某一層中充當所有類型的超類型的類型。 |
|
|
|
Lazy Load(延遲加載) |
對象中並不包含所有想要的數據,但是知道如何獲取這些數據 |
|
|
|
Mapper(映射器 |
在兩個獨立對象間建立起通信的對象 |
|
|
|
Metadata Mapping(元數據映射) |
在元數據中保存對象-關係映射的細節 |
元數據文件將對象映射到數據庫 |
元數據使問題簡單 |
|
Model View Controller(模型-視圖-控制器) |
將用戶界面交互分割成三個不同的角色 |
|
|
|
Money(貨幣) |
表示貨幣值 |
|
|
|
Optimistic Offline Lock(樂觀離線鎖) |
通過檢測衝突並回滾事務來防止併發業務事務間的 |
|
|
|
Page Controller(頁控制器) |
處理Web站點中特定頁面請求或動作的對象 |
|
|
|
Pessimistic Offline Lock(悲觀離線鎖) |
通過每次只允許一個業務事務訪問數據來防止併發 |
|
|
|
Plugin(插件 |
在配置階段而不是在編譯階段連接類 |
|
|
|
Query Object(查詢對象) |
表示數據庫查詢的對象 |
|
|
|
Record Set(記錄集) |
列表數據的內存表示 |
|
|
|
Registry(註冊表) |
其他對象可以通過其找到公共對象或服務的一個知名對象 |
|
|
|
Remote Façade(遠程外觀) |
在細粒度對象上提供粗粒度的外觀,以改進跨網絡的有效性 |
|
|
|
Repository(資源庫) |
通過用來訪問領域對象的一個類似集合的接口,在領域與數據映射 |
|
|
|
Row Data Gateway(行數據入口 |
在一個數據源中充當到一條記錄的入口的對象。每條記 |
|
|
|
Separated Interface(分離接口) |
在一個與其實現分離的包中定義一個接口 |
|
|
|
Serialized LOB(序列化LOB) |
通過序列化方法將一張對象圖保存在一個大對象(LOB) |
|
|
|
Server Session State(服務器會話狀態) |
將會話狀態以序列化方式保存在一個服務器系統上 |
|
|
|
Service Layer(服務層) |
通過一個服務層來定義應用的邊界,這個服務層建立了一組可用 |
|
|
|
Service Stub(服務樁) |
在測試過程中去除對有問題服務的依賴。 |
|
|
|
Single Table Inheritance(單表繼承) |
通過一個表來表示類的一個繼承層次,表中各列對應 |
|
|
|
Special Case(特殊情況 |
爲特定情況提供特殊行爲的一個子類 |
|
|
|
Table Data Gateway(表數據入口 |
充當到數據庫表的入口的對象。一個實例處理表中的所有行 |
|
|
|
Table Module(表模塊) |
通過一個實例處理數據庫表或視圖中所有行的業務邏輯 |
|
|
|
Template View(模板視圖 |
通過在HTML頁面中嵌入標記來將有關信息融入HTML |
|
|
|
Transaction Script(事務腳本) |
通過過程來組織業務邏輯。其中,每個過程處理來自表現 |
|
|
|
Transform View(轉換視圖) |
逐條處理領域數據並將它們轉換成HTML的一個視圖 |
|
|
|
Two Step View(兩步視圖 |
通過兩步將領域數據轉換成HTML:首先形成某種邏輯頁面, |
|
|
|
Unit of Work(工作單元) |
維護由業務事務所影響的對象列表,並協調更改的寫出以及並 |
一個控制對象,它複雜跟蹤數據的讀取、修改和存儲的情況。 |
|
A |
Value Object(值對象) |
類似於金錢或數據範圍的、小而簡單的對象,其相等性不是基於ID的 |
|
|