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

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

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

    shuimudaoliang

     

    2006年1月21日

    讀書(shū)筆記1(在實(shí)達(dá)的日子里)

    Hibernate學(xué)習(xí)心得--軟件設(shè)計(jì)階段的模型



    在科學(xué)和工程技術(shù)領(lǐng)域,模型是一個(gè)很有用途的概念,它可以用來(lái)模擬一個(gè)真實(shí)的系統(tǒng)。在軟件開(kāi)發(fā)領(lǐng)域,模型用來(lái)表示真實(shí)世界的實(shí)體。在軟件開(kāi)發(fā)的不同階段, 需要為目標(biāo)系統(tǒng)創(chuàng)建不同類(lèi)型的模型。在分析階段,需要?jiǎng)?chuàng)建概念模型。在設(shè)計(jì)階段,需要?jiǎng)?chuàng)建域模型和數(shù)據(jù)模型。其中,域模型是面向?qū)ο蟮模瑪?shù)據(jù)模型是面向關(guān) 系的,域模型和數(shù)據(jù)模型之間存在一種對(duì)象-關(guān)系映射。

    概念模型

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

         概念模型描述了每個(gè)實(shí)體得概念和屬性,以及實(shí)體之間的關(guān)系:一對(duì)一、一對(duì)多和多對(duì)多。在現(xiàn)實(shí)生活中都可以找到相應(yīng)的 例子,例如一只母雞有很多小雞是一對(duì)多關(guān)系,一位客戶(hù)選購(gòu)了很多商品,而這些商品也可以被許多客戶(hù)選購(gòu),這是多對(duì)多關(guān)系。

    關(guān)系數(shù)據(jù)模型

        到目前為止,關(guān)系數(shù)據(jù)庫(kù)仍然是使用最廣泛的數(shù)據(jù)庫(kù),它存儲(chǔ)的是關(guān)系數(shù)據(jù)。關(guān)系數(shù)據(jù)模型是在概念模型的基礎(chǔ)上建立起來(lái)的,用于描述這些關(guān)系數(shù)據(jù)的靜態(tài)結(jié)構(gòu),它由以下內(nèi)容組成:

        一個(gè)或多個(gè)表
        表的所有索引
        視圖
        觸發(fā)器
        表與表之間的參照完整性

         數(shù)據(jù)庫(kù)Schema是對(duì)數(shù)據(jù)模型的實(shí)現(xiàn)。對(duì)于支持SQL的關(guān)系數(shù)據(jù)庫(kù),可以采用SQL DDL語(yǔ)言來(lái)創(chuàng)建 數(shù)據(jù)庫(kù)Schema。SQL DDL 用于生成數(shù)據(jù)庫(kù)中的物理實(shí)體,例如下面的創(chuàng)建CUSTOMERS表的  SQL DDL:

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

         值得注意的是,數(shù)據(jù)庫(kù)Schema有兩種含義,一種是概念上的Schema,指的是一組DDL語(yǔ)句集,該語(yǔ)句集完整地描述了數(shù)據(jù)庫(kù)的結(jié)構(gòu)。還有一種是物理 上的Schema,指的是數(shù)據(jù)庫(kù)中的一個(gè)名字空間,它包含一組表、視圖和存儲(chǔ)過(guò)程等命名對(duì)象。物理Schema可以通過(guò)標(biāo)準(zhǔn)SQL語(yǔ)句來(lái)創(chuàng)建、更新和修 改。例如以下SQL語(yǔ)句創(chuàng)建了兩個(gè)物理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,……);

    域模型

        域模型由以下內(nèi)容組成:具有狀態(tài)和行為的域?qū)ο螅挥驅(qū)ο笾g的關(guān)系。

    域?qū)ο?br>
    1.實(shí)體域?qū)ο螅捍砣恕⒌攸c(diǎn)、事物或概念。通常,可以把業(yè)務(wù)領(lǐng)域中的名詞,例如客戶(hù)、訂單、商品,當(dāng)然也包括前面提到過(guò)的母雞,作為實(shí)體域?qū)ο螅?br>2.過(guò)程域?qū)ο螅捍響?yīng)用中的業(yè)務(wù)邏輯或流程。它通常依賴(lài)于實(shí)體域?qū)ο蟆?br>3.事件域?qū)ο螅捍響?yīng)用中的一些事件,例如異常、警告或超時(shí)等。

    域?qū)ο笾g的關(guān)系

        在域模型中,類(lèi)之間存在四種關(guān)系。

    1.關(guān)聯(lián)(Association)
       
        關(guān)聯(lián)指的是類(lèi)之間的引用關(guān)系,這是實(shí)體域?qū)ο笾g最普遍的一種關(guān)系。關(guān)聯(lián)可以分為一對(duì)一、一對(duì)多和多對(duì)多關(guān)聯(lián)。

    2.依賴(lài)(Dependency)

        依賴(lài)指的是類(lèi)之間的訪問(wèn)關(guān)系。如果類(lèi)A訪問(wèn)類(lèi)B的屬性或方法,或者說(shuō)是A負(fù)責(zé)實(shí)例化B,那么可以說(shuō)類(lèi)A依賴(lài)類(lèi)B。

    3.聚集(Aggregation)

        聚集指的是整體與部分之間的關(guān)系,在實(shí)體域?qū)ο笾g也很常見(jiàn)。例如,人與手就是聚集關(guān)系,在Person類(lèi)中由一個(gè)hands集合,它存放被聚集的Hand對(duì)象:

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

    4.一般化(Generalization)

        一般化指的是類(lèi)之間的繼承關(guān)系。

    域?qū)ο蟮某志没拍?br>
         當(dāng)實(shí)體域?qū)ο笤趦?nèi)存中創(chuàng)建后,它們不可能永遠(yuǎn)存在。最后,他們要么從內(nèi)存中清除,要么被持久化到數(shù)據(jù)存儲(chǔ)庫(kù)中。內(nèi)存 無(wú)法永久地保存數(shù)據(jù),因此必須對(duì)實(shí)體域?qū)ο筮M(jìn)行持久化。否則,如果對(duì)象沒(méi)有被持久化,用戶(hù)在應(yīng)用運(yùn)行時(shí)創(chuàng)建地訂單信息將在應(yīng)用結(jié)束運(yùn)行后隨之消失。

        當(dāng)然,并不是所有地域?qū)ο蠖夹枰志没ǔV挥袑?shí)體域?qū)ο蟛判枰志没硗猓行?shí)體域?qū)ο笠膊恍枰志没?br>
        狹義的理解,“持久化”僅僅指把域?qū)ο笥谰帽4娴綌?shù)據(jù)庫(kù)中;廣義的理解,“持久化”包括和數(shù)據(jù)庫(kù)相關(guān)的各種操作。

    posted @ 2006-01-21 20:40 shuimudaoliang 閱讀(363) | 評(píng)論 (0)編輯 收藏

    僅列出標(biāo)題  

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(1)

    隨筆檔案

    搜索

    最新評(píng)論

    主站蜘蛛池模板: 久久久无码精品亚洲日韩按摩| 免费a级毛片网站| 亚洲国产成人久久精品动漫 | 精品在线观看免费| 免费观看的a级毛片的网站| 亚洲人配人种jizz| 野花高清在线观看免费完整版中文| 亚洲日韩国产精品无码av| 国产精彩免费视频| 亚洲一区无码中文字幕乱码| 91在线视频免费播放| 亚洲国产欧洲综合997久久| 四虎成人免费网址在线| 日韩国产欧美亚洲v片| 精品亚洲成AV人在线观看| 国产午夜精品理论片免费观看| 国产亚洲日韩在线三区| 国产免费AV片在线观看| 亚洲视频一区在线播放| 日韩精品无码区免费专区| 亚洲狠狠婷婷综合久久蜜芽| 国产做床爱无遮挡免费视频| 国产精品免费看久久久香蕉| 亚洲AV日韩精品久久久久久久| 在线a免费观看最新网站| 二区久久国产乱子伦免费精品| 自拍偷自拍亚洲精品被多人伦好爽 | 日韩免费观看的一级毛片| 国产精品亚洲va在线观看| 亚洲高清偷拍一区二区三区| 九九精品成人免费国产片| 91嫩草亚洲精品| 国产乱色精品成人免费视频| a级毛片毛片免费观看久潮喷| 久久综合亚洲色HEZYO社区 | 爱情岛论坛网亚洲品质自拍| 亚洲爆乳AAA无码专区| 中文字幕亚洲一区| 亚洲一级毛片免费看| 美女一级毛片免费观看| 亚洲国语精品自产拍在线观看|