DomainModelDescriptor 設計的初衷是爲了適應不一樣類型的模型定義可以經過ObjectiveSQL 寫入數據庫或從數據庫中讀取,在JDK 中也有相似的設計,如PropertyDescriptor,BeanDescriptor 等,其目的也是描述Java Bean 和Property 的基礎元信息,只不過在ObjectiveSQL 中DomainModelDescriptor 是一個抽象的定義,描述的是一個可以被ObjectiveSQL 所認識的業務模型,能夠是一個Java Bean,也能夠是其它對象。java
在我過往的項目中,除了經常使用的Java Bean 模型能夠進行數據庫的訪問,還會存在一些其它類型的模型同時也須要進行數據庫存儲,具體示例以下:git
過程介紹:github
上文描述的是一種 DomainModelDescriptor 的場景,因爲不一樣使用場景下,數據模型的結構也不同,ObjectiveSQL 充分考慮了場景的變化,因此抽象出DomainModelDescriptor,爲數據庫訪問提供必要的元信息。sql