• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于面向?qū)ο髷?shù)據(jù)庫系統(tǒng)的應(yīng)用系統(tǒng)開發(fā)

      2013-04-29 00:44:03楊麗雯尹華松張永繼
      電腦知識(shí)與技術(shù) 2013年9期
      關(guān)鍵詞:數(shù)據(jù)模型

      楊麗雯 尹華松 張永繼

      摘要:介紹了面向?qū)ο髷?shù)據(jù)庫系統(tǒng)(OODBS)的基本原理,引入了利用基于開源的面向?qū)ο髷?shù)據(jù)庫DB4O實(shí)現(xiàn)OODBS的方法。在此基礎(chǔ)上,利用DB4O對(duì)“新聞信息系統(tǒng)中的內(nèi)容管理器”進(jìn)行了設(shè)計(jì),展示了利用DB4O實(shí)現(xiàn)OODBS具體應(yīng)用的方法和途徑。

      關(guān)鍵詞:面向?qū)ο髷?shù)據(jù)庫系統(tǒng);數(shù)據(jù)模型;內(nèi)容管理系統(tǒng)

      中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2013)09-2033-04

      1 面向?qū)ο笈c面向?qū)ο髷?shù)據(jù)庫系統(tǒng)

      面向?qū)ο螅∣O)方法的核心思想,是將系統(tǒng)問題域中的實(shí)體對(duì)象,直接映射為軟件的構(gòu)成元素。認(rèn)為客觀世界本來是由許多不同種類的對(duì)象構(gòu)成的,在不同對(duì)象之間的相互聯(lián)系和相互作用下,才構(gòu)成完整的事物。

      面向?qū)ο蠓椒▽W(xué)所引入的對(duì)象、方法、消息、類、實(shí)例、繼承性、封裝性等重要概念,為軟件開發(fā)的分析和設(shè)計(jì)帶來新的思維過程和方法,對(duì)于實(shí)現(xiàn)大型的、復(fù)雜的系統(tǒng)分析和設(shè)計(jì)奠定了良好的科學(xué)技術(shù)基礎(chǔ)。

      近年以來,數(shù)據(jù)庫開發(fā)商們都已經(jīng)在關(guān)系數(shù)據(jù)庫系統(tǒng)中很好地支持了對(duì)象到關(guān)系表的映射,如Oracle8i 、DB2-5等等。但是,利用面向?qū)ο蠼<夹g(shù)所建立起來的對(duì)象模型,無法直接映射到關(guān)系結(jié)構(gòu)中,需要通過某種方法,進(jìn)行必不可少的轉(zhuǎn)換。但是更重要的,是概念上的混亂和額外開發(fā)負(fù)擔(dān)所帶來的問題。

      面向?qū)ο髷?shù)據(jù)庫系統(tǒng)(OODBS)能直接對(duì)應(yīng)面向?qū)ο螅∣O)數(shù)據(jù)模型,支持自定義的各種數(shù)據(jù)類型和結(jié)構(gòu),并提供數(shù)據(jù)建?;A(chǔ)上的復(fù)雜數(shù)據(jù)操縱能力,包括:定義專用的控制運(yùn)算,定義語義關(guān)系運(yùn)算,以及事務(wù)管理運(yùn)算,等等。

      OODBS 是持久共享對(duì)象庫的管理者;每個(gè)對(duì)象庫對(duì)應(yīng)模型所定義的對(duì)象集合。

      2 面向?qū)ο髷?shù)據(jù)庫系統(tǒng)的特性

      面向?qū)ο髷?shù)據(jù)庫系統(tǒng)(OODBS) 賦予數(shù)據(jù)庫設(shè)計(jì)和應(yīng)用開發(fā)人員很強(qiáng)的面向?qū)ο竽芰?,從而大大擴(kuò)展了數(shù)據(jù)庫系統(tǒng)的應(yīng)用領(lǐng)域,提高了開發(fā)人員的工作效率和應(yīng)用系統(tǒng)的質(zhì)量。面向?qū)ο髷?shù)據(jù)庫系統(tǒng)具有以下特性:

      ① 具有表示和構(gòu)造復(fù)雜對(duì)象的能力。

      ② 封裝性和信息隱藏技術(shù)提供了程序的模塊化機(jī)制。

      ③ 能夠表達(dá)繼承和類層次的關(guān)系。

      ④ 一般為原生數(shù)據(jù)庫,直接使用編程語言操作數(shù)據(jù)庫,提高程序員開發(fā)持久層階段的效率。

      3 開源的面向?qū)ο蟮臄?shù)據(jù)庫DB4O

      DB4O(Database 4 Object)就是一家來自加州硅谷的開源面向?qū)ο髷?shù)據(jù)庫公司 db4objects 設(shè)計(jì)和實(shí)現(xiàn)的一款開源的性能卓越的純面向?qū)ο髷?shù)據(jù)庫。目前支持.NET和java兩種編程語言。

      db4o主要特性如下:

      ① 100% 原生的面向?qū)ο髷?shù)據(jù)庫。

      ② 高性能db4o 官方公布的基準(zhǔn)測(cè)試數(shù)據(jù),如表1所示(表中的數(shù)值表示相對(duì)速度)。db4o 比采用 Hibernate/MySQL 方案在某些測(cè)試線路上速度高出 44 倍之多!并且安裝簡單,僅僅需要 400Kb 左右的 .jar 或 .dll 庫文件。

      ③ 支持多種平臺(tái)db4o 支持從 Java 1.1 到 Java 5.0,此外還支持 .NET 、 CompactFramework 、 Mono 等。

      ④ 開源模式 與其他 ODBMS 不同,db4o 為開源軟件,通過開源社區(qū)的力量驅(qū)動(dòng)開發(fā) db4o 產(chǎn)品。

      4 J2EE系統(tǒng)的設(shè)計(jì)

      目前比較成熟的WEB應(yīng)用的模型,即J2EE系統(tǒng)的架構(gòu)模型——MVC2,MVC+Struts,如圖1所示。

      本研究結(jié)合面向?qū)ο髷?shù)據(jù)庫DB4O的特性和J2EE系統(tǒng)的特性,以內(nèi)容管理系統(tǒng)CMS(Content Management System)作為實(shí)現(xiàn)的載體。

      4.1 內(nèi)容管理系統(tǒng)模塊的設(shè)計(jì)

      根據(jù)新聞管理系統(tǒng)的特殊性,分為前臺(tái)系統(tǒng)和后臺(tái)管理系統(tǒng)。前臺(tái)系統(tǒng)的功能模塊如圖2所示。

      后臺(tái)管理的系統(tǒng)功能模塊如圖3所示。

      4.2 內(nèi)容管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)

      內(nèi)容管理系統(tǒng)最為主要的數(shù)據(jù)庫表的設(shè)計(jì)新聞這張表,其他的表的設(shè)計(jì)都是圍繞這張表進(jìn)行,所以整個(gè)系統(tǒng)的數(shù)據(jù)庫表的設(shè)計(jì)如圖4所示。

      所有表的id都由系統(tǒng)生成唯一的標(biāo)識(shí),User作為News表的user屬性的類型,Type作為News表的type屬性的類型,Comment作為News表的comments屬性的類型,并且comments還是數(shù)組類型,這樣能夠很好的體現(xiàn)此系統(tǒng)中每個(gè)數(shù)據(jù)表的對(duì)象關(guān)系。

      4.3 內(nèi)容管理系統(tǒng)的實(shí)現(xiàn)

      由于面向?qū)ο髷?shù)據(jù)庫DB4O不同于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫,而其中最大的特點(diǎn)是不再有sql語句對(duì)數(shù)據(jù)庫進(jìn)行操作,所以對(duì)于和數(shù)據(jù)庫交互的開啟、關(guān)閉、增、刪、改、查的操作封裝城公用類(BaseDAO)進(jìn)行相關(guān)的操作。而這些對(duì)數(shù)據(jù)庫的操作中最有特點(diǎn)的則是查詢,因?yàn)闆]有sql語句,所以在此封裝了一個(gè)玫舉用于判斷對(duì)于某個(gè)字段的查詢是相等,相似,大于,小于,還是不相等。查詢操作符的玫舉封裝代碼,如圖5所示。

      在查詢操作時(shí)就能夠和關(guān)系數(shù)據(jù)庫類似的進(jìn)行相等、相似、大于、小于、不相等的查詢。生成組合查詢條件的代碼,如圖6所示。

      生成組合查詢條件的代碼說明:傳入?yún)?shù),query為查詢條件的實(shí)例,fields為查詢的字段名,values為對(duì)應(yīng)查詢字段具體的值,queryTypes為對(duì)應(yīng)查詢條件的操作類型即相等、相似、大于、小于、不相等之一。Fields,values,queryTypes為相同大小的數(shù)組,并且按照數(shù)組下標(biāo)一一對(duì)應(yīng)。

      4.4 新聞系統(tǒng)的特殊查詢

      新聞系統(tǒng)大部分的操作都是查看最新的新聞,結(jié)合DB4O數(shù)據(jù)庫在執(zhí)行查詢(client.query())時(shí)的一些特性,即每次會(huì)取出數(shù)據(jù)庫中此對(duì)象類的所有IDs,此處為所有News對(duì)象的ID。所以,單獨(dú)對(duì)這部分操作進(jìn)行處理。多個(gè)查詢操作在一段短時(shí)間訪問getNewsList方法時(shí),在第一個(gè)查詢操作還沒有關(guān)閉數(shù)據(jù)庫之前到來的查詢,繼續(xù)使用第一個(gè)操作查詢打開的連接和得到的數(shù)據(jù)集合對(duì)象(ObjectSet)由此提高性能。

      5 結(jié)束語

      面向?qū)ο蟮臄?shù)據(jù)庫在J2EE系統(tǒng)中的應(yīng)用,就目前而言應(yīng)用不是很廣泛,但是就其自身的特性在某一些領(lǐng)域運(yùn)用面向?qū)ο蟮臄?shù)據(jù)庫可能會(huì)起到優(yōu)化系統(tǒng),提高性能的作用。目前DB4O是主要用于嵌入式應(yīng)用開發(fā)的數(shù)據(jù)庫,但是它優(yōu)良的性能,而且比較優(yōu)秀的事務(wù)管理,同樣能讓其在企業(yè)應(yīng)用中合理的應(yīng)用能發(fā)揮很好的作用。此內(nèi)容管理系統(tǒng)是把面向?qū)ο蟮臄?shù)據(jù)庫DB4O用于J2EE項(xiàng)目中的一次嘗試,并且取得了不錯(cuò)的效果。不過是不是適合更復(fù)雜的企業(yè)應(yīng)用系統(tǒng)還需要進(jìn)一步的探索和研究。

      參考文獻(xiàn):

      [1] 夏素霞,袁宗福,金立平.OO模型中ODL語言的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2005(5).

      [2] 王意潔.面向?qū)ο髷?shù)據(jù)庫的并行查詢處理與事務(wù)管理[M].長沙:國防科技大學(xué)出版社,2005.

      [3] 徐潔磐.面向?qū)ο髷?shù)據(jù)庫系統(tǒng)及其應(yīng)用[M].北京:科學(xué)出版社,2003.

      [4] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概念[M].北京:高等教育出版社,2006.

      [5] (印度) Kumar B V, Sangeetha S, Subrahmanya S V.深入淺出J 2 EE架構(gòu) 應(yīng)用程序設(shè)計(jì)與部署的原理[M].北京:清華大學(xué)出版社,2006.

      [6] (美) Darren Broemmer.J 2 EE應(yīng)用與實(shí)踐技巧 Java設(shè)計(jì)模式、自動(dòng)化與性能[M].北京:電子工業(yè)出版社,2004.

      [7] Rosen Jiang,張黃矚,Chris.開源面向?qū)ο髷?shù)據(jù)庫DB4O之旅[EB/OL].http://www.ibm.com/developerworks/cn/java/j-db4o/

      [8] 《DB4O-6.1-tutorial》,DB4O開發(fā)手冊(cè).

      猜你喜歡
      數(shù)據(jù)模型
      基于Pro/E 的發(fā)射裝置設(shè)計(jì)數(shù)據(jù)快速轉(zhuǎn)化方法
      面板數(shù)據(jù)模型截面相關(guān)檢驗(yàn)方法綜述
      人民幣匯率波動(dòng)對(duì)張家界入境旅游的影響——基于主要客源國面板數(shù)據(jù)模型的分析
      加熱爐爐內(nèi)跟蹤數(shù)據(jù)模型優(yōu)化
      財(cái)政支出效率與產(chǎn)業(yè)結(jié)構(gòu):要素積累與流動(dòng)——基于DEA 和省級(jí)面板數(shù)據(jù)模型的實(shí)證研究
      基于PowerDesigner的家庭財(cái)務(wù)管理系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)
      經(jīng)濟(jì)全球化對(duì)我國勞動(dòng)收入份額影響機(jī)制研究——基于面板數(shù)據(jù)模型
      環(huán)境規(guī)制、行業(yè)異質(zhì)性與區(qū)域產(chǎn)業(yè)集聚——基于省際動(dòng)態(tài)面板數(shù)據(jù)模型的GMM方法
      基于分位數(shù)回歸的電力負(fù)荷特性預(yù)測(cè)面板數(shù)據(jù)模型
      面向集成管理的出版原圖數(shù)據(jù)模型
      类乌齐县| 通道| 屯门区| 麻城市| 镇雄县| 岳池县| 万安县| 绿春县| 公安县| 通渭县| 南宁市| 瑞丽市| 芮城县| 滁州市| 芜湖县| SHOW| 磐石市| 宝清县| 泸水县| 红安县| 沁源县| 满洲里市| 塘沽区| 彭阳县| 汨罗市| 密云县| 页游| 临江市| 承德县| 拜泉县| 广平县| 滁州市| 宣化县| 平利县| 惠东县| 大荔县| 马山县| 万宁市| 江陵县| 柏乡县| 广宁县|