Caché開發(fā)培訓課程:Caché面向?qū)ο箝_發(fā)ppt課件_第1頁
Caché開發(fā)培訓課程:Caché面向?qū)ο箝_發(fā)ppt課件_第2頁
Caché開發(fā)培訓課程:Caché面向?qū)ο箝_發(fā)ppt課件_第3頁
Caché開發(fā)培訓課程:Caché面向?qū)ο箝_發(fā)ppt課件_第4頁
Caché開發(fā)培訓課程:Caché面向?qū)ο箝_發(fā)ppt課件_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、Cach 開發(fā)培訓課程之四 Cach 面向?qū)ο箝_發(fā)東華軟件股份公司醫(yī)療事業(yè)部.OOP前言1什么是Cach 的面向?qū)ο?Cach 的類定義3Cach 的面向?qū)ο缶幊?:8972/csp/docbook/DocBook.UI.Page.clsCach Development Guides -Using Cach Objects.OOP前言1什么是Cach 的面向?qū)ο?Cach 的類定義3Cach 的面向?qū)ο缶幊?.OOP的根本特征封裝承繼 泛化、聚合多態(tài)覆蓋、重載.OOP前言1什么是Cach 的面向?qū)ο?Cach 的類定義3Cach 的面向?qū)ο缶幊?.Cach對象的特點 一個強大

2、的對象模型包括承繼,屬性,方法,集合,關系,用戶定義的數(shù)據(jù)類型和流。 一個靈敏的對象耐久化機制 控制數(shù)據(jù)庫的耐久化類的各個方面包括索引,約束和指向完好性。 一個易于運用的事務和并發(fā)模型 自動集成與Cache緩存的SQL經(jīng)過一致數(shù)據(jù)架構。 與Java、C + +、ActiveX的交互性。 自動提供XML支持。 一個強大的協(xié)同開發(fā)環(huán)境:Studio。.Cach對象包括以下主要內(nèi)容 Class Dictionary:類定義,描畫了每個特定的類庫 Class Compiler:一組程序,將類定義轉(zhuǎn)換成可執(zhí)行代碼 Object Runtime System:支持對象運轉(zhuǎn)時操作 Cach Class Li

3、brary:一組Cach 安裝時預先建立的類 Language Bindings:與各開發(fā)言語的綁定,Projection Gateways:外部系統(tǒng)經(jīng)過網(wǎng)關訪問Cach 對象.面向?qū)ο蟮臄?shù)據(jù)庫開發(fā)類和對象籠統(tǒng)與建模承繼和多態(tài)封裝可擴展性對象耐久對象綁定.Cach對象模型支持以下功能Persistence:耐久性對象可以被存儲在Cach數(shù)據(jù)庫或外部數(shù)據(jù)庫。 同時解析存儲對象為關系表,可以運用規(guī)范的SQL查詢Properties:屬性簡單值、對象、嵌入對象、對象援用、數(shù)組、集合、流Custom Data Types:自定義數(shù)據(jù)類型可以運用運用程序自定義的數(shù)據(jù)類型Methods:方法類方法、實例方

4、法Polymorphism:多態(tài)Inheritance:承繼.Object的:OREF、OID和IDOREF一個對象援用,是一個值set obj=#class(test.Person).%New()OID一個對象標識符,獨一標識一個耐久化對象。set obj=#class(test.Person).%Open(OID)ID一個值,獨一標識一個特定的范圍內(nèi)特定的實例。set obj=#class(test.Person).%OpenId(ID).Cach的ClassTypeTransient Object Classes暫時類,注冊類,in memory類型:RegisteredObjectPe

5、rsistent Object Classes耐久類,in DB類型:%PersistentSerial Object Classes序列化類,in memory,or embedded within a persistent object%SerialObjectData Type Classes數(shù)據(jù)類型類,依靠于某個對象。.Cach的ClassType.承繼與多重承繼承繼Class User.MyClass Extends %Persistent ClassType = persistent 留意:對ClassType的要求, 在不同版本之間有差別多重承繼Class X Extends (

6、A, B, C) 屬性:一切父類的集合優(yōu)先級:后面的超類的屬性覆蓋前面的超類屬性關鍵字:來源于第一個超類.OOP前言1什么是Cach 的面向?qū)ο?Cach 的類定義3Cach 的面向?qū)ο缶幊?.Cach的類成員 ClassName:獨一類名,包括所屬包。 Property:屬性 ,類實例的數(shù)據(jù)集合。 Method:類方法和實例方法。 Query :查詢,輸出數(shù)據(jù)集。 Index:索引的存儲構造,用于優(yōu)化頻繁訪問數(shù)據(jù)方式。 Class Keywords:類關鍵詞,指定整體類的行為。 Class Parameters:類參數(shù),自定義類通常需求運用的值。.Property KeywordsCalcu

7、latedDescriptionFinalInitialExpressionPrivateRequiredTransientTypeAccessorsGet :write obj.PropertyGet()Set :do obj.PropertySet(val) Attribute Data Type PropertiesObject-Valued PropertiesCollection PropertiesStream PropertiesMultidimensional properties.MethodArgumentsDefault ValuesBy ReferenceCallRet

8、urn ValuesLanguageKeywordsClassMethodFinalSQLProc.QueryDefine the queryNew Query WizardSQL Query & User-Written Query4 parts of User-Written QueryKeyWordsSQLProcSqlName Invoke the querydo #class(%ResultSet).RunQuery(className,queryName,arg,.)Dynamic SQL.Storage%CacheStorage 耐久對象的默許存儲方式,可以自動創(chuàng)建CacheSt

9、orage 的關鍵點Data NodesDataLocationIdLocationIndexNodesIndexLocationStreamLocation%CacheSQLStorage 一種特殊的存儲類,通常用于映射老構造的global過SQL Gateway存儲外部關系數(shù)據(jù)庫的構造.Index索引的特點索引為耐久化類提供一個優(yōu)化的實例檢索機制定義一個特定的排序與一類相關的常用懇求的數(shù)據(jù)子集索引可以定義為一個或多個屬性的排序排序規(guī)那么EXACTSQLSTRING SQLUPPER ALPHAUP MINUS PLUS SPACE STRING UPPER .RelationShipRel

10、ationShip的特點只需耐久類能定義RelationShipRelationShip是雙向的,在兩個類中都要定義兩種類型:1-n;父子自動保證數(shù)據(jù)完好性RelationShip解析為關系表中的外鍵父子關系的定義定義方法存儲.OOP前言1什么是Cach 的面向?qū)ο?Cach 的類定義3Cach 的面向?qū)ο缶幊?.運用Cach對象-1Excute MethodDo oref.MethodName(arglist)Set value = oref.MethodName(arglist)Excute ClassMethodDo #class(Classname).MethodName(arglis

11、t)Set value = #class(Classname).MethodName(arglist)New Object:Set oref = #class(Classname).%New()Open ObjectSet oref = #class(Classname).%OpenId(id)Set oref = #class(Classname).%Open(oid)Get PropertySet value = oref.PropertyNameSet value = oref.PropertyName.GetAt(n) /List property Set value = oref.P

12、ropertyNameGetAt(key) /Array property.運用Cach對象-2Modify PropertiesSet oref.PropertyName = value /Set car.Owner = personSet oref.PropertyName.RefPropertyName = valueModify List PropertiesDo oref.PropertyName.Insert(data) /Do person.FavoriteColors.Insert(yellow)Do oref.PropertyName.SetAt(data,n) /Do pe

13、rson.FavoriteColors.SetAt(yellow,2)Do oref.PropertyName.InsertAt(data,n) /Do person.FavoriteColors.InsertAt(yellow,2)Do oref.PropertyName.InsertObject(itemoid) /when property is ListObjectsModfiying Array PropertiesDo oref.PropertyName.SetAt(data,key) /Do palette.Colors.SetAt(255,0,0,red)Do oref.Pro

14、pertyName.SetObjectAt(ElementOid,key) /property is Array of ObjectsModifying Stream PropertiesDo oref.PropertyName.Write(data)Deleting ObjectsDo #class(Classname).%DeleteId(id)Deleting ObjectsRebuild Indexdo #class(Classname).%BuildIndices().運用Cach對象-3Save ObjectDo oref.%Save()Set sc=oref.%Save()TStart/.Set sc = oref.%Save() If $ISERR(sc) /If ($ISOK(sc) TRollBack Do $System.Status.DisplayError(sc) elseTCommitSet id=ore

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論