<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    shuimudaoliang

     

    讀書筆記1(在實達的日子里)

    Hibernate學習心得--軟件設計階段的模型



    在科學和工程技術領域,模型是一個很有用途的概念,它可以用來模擬一個真實的系統。在軟件開發領域,模型用來表示真實世界的實體。在軟件開發的不同階段, 需要為目標系統創建不同類型的模型。在分析階段,需要創建概念模型。在設計階段,需要創建域模型和數據模型。其中,域模型是面向對象的,數據模型是面向關 系的,域模型和數據模型之間存在一種對象-關系映射。

    概念模型

         概念模型清楚地顯示了問題域中的實體。不管是技術人員還是非技術人員都能看得懂改面模型,他們可以很容易地提出模型 中存在的問題,幫助分析人員及早對模型進行修改。在軟件設計域開發周期中,模型的變更需求提出得越晚,所耗費得開發成本就越大。

         概念模型描述了每個實體得概念和屬性,以及實體之間的關系:一對一、一對多和多對多。在現實生活中都可以找到相應的 例子,例如一只母雞有很多小雞是一對多關系,一位客戶選購了很多商品,而這些商品也可以被許多客戶選購,這是多對多關系。

    關系數據模型

        到目前為止,關系數據庫仍然是使用最廣泛的數據庫,它存儲的是關系數據。關系數據模型是在概念模型的基礎上建立起來的,用于描述這些關系數據的靜態結構,它由以下內容組成:

        一個或多個表
        表的所有索引
        視圖
        觸發器
        表與表之間的參照完整性

         數據庫Schema是對數據模型的實現。對于支持SQL的關系數據庫,可以采用SQL DDL語言來創建 數據庫Schema。SQL DDL 用于生成數據庫中的物理實體,例如下面的創建CUSTOMERS表的  SQL DDL:

        create table CUSTOMERS {
          ID int not null,
          NAME varchar(20),
          AGE int,
          primary key (ID)
        };

         值得注意的是,數據庫Schema有兩種含義,一種是概念上的Schema,指的是一組DDL語句集,該語句集完整地描述了數據庫的結構。還有一種是物理 上的Schema,指的是數據庫中的一個名字空間,它包含一組表、視圖和存儲過程等命名對象。物理Schema可以通過標準SQL語句來創建、更新和修 改。例如以下SQL語句創建了兩個物理Schema:

        create schema SCHEMA_A;
        create table SCHEMA_A.CUSTOMERS(ID int not null,……);

        create schema SCHEMA_B;
        create table SCHEMA_B.CUSTOMERS(ID int not null,……);

    域模型

        域模型由以下內容組成:具有狀態和行為的域對象;域對象之間的關系。

    域對象

    1.實體域對象:代表人、地點、事物或概念。通常,可以把業務領域中的名詞,例如客戶、訂單、商品,當然也包括前面提到過的母雞,作為實體域對象;
    2.過程域對象:代表應用中的業務邏輯或流程。它通常依賴于實體域對象。
    3.事件域對象:代表應用中的一些事件,例如異常、警告或超時等。

    域對象之間的關系

        在域模型中,類之間存在四種關系。

    1.關聯(Association)
       
        關聯指的是類之間的引用關系,這是實體域對象之間最普遍的一種關系。關聯可以分為一對一、一對多和多對多關聯。

    2.依賴(Dependency)

        依賴指的是類之間的訪問關系。如果類A訪問類B的屬性或方法,或者說是A負責實例化B,那么可以說類A依賴類B。

    3.聚集(Aggregation)

        聚集指的是整體與部分之間的關系,在實體域對象之間也很常見。例如,人與手就是聚集關系,在Person類中由一個hands集合,它存放被聚集的Hand對象:

        public class Person {
          private Set hands = new HashSet();
          …………
        }

    4.一般化(Generalization)

        一般化指的是類之間的繼承關系。

    域對象的持久化概念

         當實體域對象在內存中創建后,它們不可能永遠存在。最后,他們要么從內存中清除,要么被持久化到數據存儲庫中。內存 無法永久地保存數據,因此必須對實體域對象進行持久化。否則,如果對象沒有被持久化,用戶在應用運行時創建地訂單信息將在應用結束運行后隨之消失。

        當然,并不是所有地域對象都需要持久化,通常只有實體域對象才需要持久化,另外,有些實體域對象也不需要持久化。

        狹義的理解,“持久化”僅僅指把域對象永久保存到數據庫中;廣義的理解,“持久化”包括和數據庫相關的各種操作。

    posted on 2006-01-21 20:40 shuimudaoliang 閱讀(356) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆檔案

    搜索

    最新評論

    主站蜘蛛池模板: 亚洲中文无码永久免费| 日本无吗免费一二区| 亚洲第一网站男人都懂| 亚洲第一精品电影网| www在线观看播放免费视频日本| 无码人妻一区二区三区免费n鬼沢| 日韩高清在线免费看| 亚洲精品综合一二三区在线 | 国产免费爽爽视频在线观看| 免费观看国产精品| 亚洲第一街区偷拍街拍| 免费看无码自慰一区二区| 亚洲国产成人一区二区三区| 一级白嫩美女毛片免费| 亚洲成av人在片观看| 立即播放免费毛片一级| 在线看片无码永久免费aⅴ| 亚洲精品国产电影午夜| 99久久综合国产精品免费| 亚洲人成毛片线播放| 久久免费看黄a级毛片| 亚洲国产成人va在线观看网址| 日韩中文字幕免费视频| 久久久久亚洲av无码尤物| a级毛片视频免费观看| 日本亚洲国产一区二区三区| 久久久久女教师免费一区| 久久亚洲国产欧洲精品一| 在线观看片免费人成视频播放| 亚洲av无码成人黄网站在线观看| 先锋影音资源片午夜在线观看视频免费播放 | 亚洲午夜国产精品无码| 中文字字幕在线高清免费电影| 亚洲日韩欧洲乱码AV夜夜摸| 日本一道本不卡免费 | 无人在线观看完整免费版视频| 亚洲av产在线精品亚洲第一站 | 亚洲产国偷V产偷V自拍色戒| 日韩精品福利片午夜免费观着| 黄色免费在线网址| 国产l精品国产亚洲区在线观看|