JPH09185542A - Object management method - Google Patents

Object management method

Info

Publication number
JPH09185542A
JPH09185542A JP7342233A JP34223395A JPH09185542A JP H09185542 A JPH09185542 A JP H09185542A JP 7342233 A JP7342233 A JP 7342233A JP 34223395 A JP34223395 A JP 34223395A JP H09185542 A JPH09185542 A JP H09185542A
Authority
JP
Japan
Prior art keywords
class
list
objects
adjacency
adjacency list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP7342233A
Other languages
Japanese (ja)
Inventor
Shuichi Shiohama
修一 塩濱
Katsuhisa Komatsubara
克久 小松原
Kimito Takadate
公人 高舘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7342233A priority Critical patent/JPH09185542A/en
Publication of JPH09185542A publication Critical patent/JPH09185542A/en
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To execute an operation on retrieval, addition and deletion for the relation by collectively managing objects and the relation of the objects through the use of an adjacent list. SOLUTION: When the objects stored in a file and related information between the objects are restored in a memory again, the object becoming a starting point is restored on the memory at first by using the adjacent list storing relation information on the objects and the related objects are restored on the memory while adjacent information which the start object has is analyzed. When the adjacent list of the related object is repeatedly analyzed and restored, the object related to the object of the starting point is restored on the memory.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、オブジェクト指向
技法によって開発された全てのソフトウエアに利用可能
である。特に、本発明を採用したクラスを含む複数のク
ラスをライブラリとして蓄積して提供することで、ソフ
トウエアの生産性が向上する。
FIELD OF THE INVENTION The present invention is applicable to all software developed by object-oriented techniques. In particular, by accumulating and providing a plurality of classes including the classes adopting the present invention as a library, the productivity of software is improved.

【0002】[0002]

【従来の技術】オブジェクト指向技法に基づいて開発さ
れたプログラムは、オブジェクト間の関連を実装する。
例えば、金融業のプログラムにおいては、営業店オブジ
ェクトとその営業店が有する通帳オブジェクトとは、1
対多の関連がある。さらに顧客オブジェクトとその顧客
オブジェクトが有する通帳オブジェクトとは、1対多の
関連がある。
Programs developed on the basis of object-oriented techniques implement the relationships between objects.
For example, in a financial business program, the business office object and the passbook object owned by the business office are 1
There is a many-to-many relationship. Furthermore, there is a one-to-many relationship between the customer object and the passbook object that the customer object has.

【0003】関連するオブジェクトの数はオブジェクト
単位に違うため、オブジェクト間の関連は、可変の情報
をもつことができるリスト構造によって管理される場合
が多い。営業店と通帳の関連、通帳と顧客の関連のよう
に関連は様々あり、クラス毎に関連する相手クラスの情
報を保有するリストを属性として有していた。
Since the number of related objects differs for each object, the relationship between objects is often managed by a list structure that can have variable information. There are various relationships such as the relationship between the business office and the passbook, and the relationship between the passbook and the customer, and each class has a list holding information of the related partner class as an attribute.

【0004】しかし、関連に対する操作は、関連するオ
ブジェクトの追加、削除、検索等どのリストにも類似し
ているために、似たような処理が各クラスに散在してい
た。
However, since the operation for the relation is similar to any list such as addition, deletion, and retrieval of the related object, similar processing is scattered in each class.

【0005】又、ある営業店が顧客の情報を取得するな
どの参照業務を実装する場合において、各クラス毎に実
装する方法では、営業店オブジェクトが直接顧客オブジ
ェクトの情報を有する方法で実装を行うか、あるいは顧
客情報を取得するメソッドを通帳クラスに実装するかで
あった。前者の方法では、例えば、名義変更業務などオ
ブジェクトの関連を変更するような業務が発生した場
合、営業店オブジェクトに有した顧客オブジェクトの情
報が、通帳オブジェクトと顧客オブジェクトの関連を常
に反映した情報になるよう考慮しなければならないし、
後者のような実装方法では、複数の関連をまたがって参
照するような業務ではより複雑なインタフェースと処理
を必要とする。このように、各クラスが独自の仕様で関
連を決定づける方法では、複数のオブジェクトにまたが
って動作するような業務の実装を追加するには、設計者
は追加する業務以外のオブジェクトの動きも常に把握す
る必要があり、拡張性、保守性の面で問題になる。
Further, when a sales office implements a reference operation such as acquiring customer information, the method of implementing each class implements a method in which the office object directly has the information of the customer object. Or it should be implemented in the passbook class for the method to get customer information. In the former method, for example, when a business such as a name change business that changes the relationship between objects occurs, the information on the customer object in the store object becomes information that always reflects the relationship between the passbook object and the customer object. You have to consider
In the latter implementation method, a business that refers to multiple associations requires a more complicated interface and processing. In this way, with the method in which each class determines the relationship with its own specifications, in order to add the implementation of the business that operates across multiple objects, the designer should always grasp the movement of objects other than the business to be added. This is a problem in terms of extensibility and maintainability.

【0006】このような問題を解決するために、オブジ
ェクト間の関連を同じ規格のもとに一元的に管理するリ
ストを用意し、クラス毎に散在していた処理を該リスト
に対する処理に全てまとめる方法があった。
In order to solve such a problem, a list for centrally managing the relation between objects under the same standard is prepared, and the processes scattered for each class are all summarized in the process for the list. There was a way.

【0007】また、日経インテリジェントシステム別冊
『オブジェクト指向データベース』によれば、オブジェ
クト間の関連を不揮発性のメモリに管理するシステムと
して、オブジェクト指向DBがあった。オブジェクト指
向DBの1つObject Storeでは、Object Storeのマニュ
アルによればObject Storeを利用するアプリケーション
のクラスの宣言情報をもとに、Object Store内でオブジ
ェクトを管理するためのメモリマップを作成し、アプリ
ケーションが有する揮発性メモリ内でのオブジェクトの
値の情報を不揮発性メモリに格納する。オブジェクトを
読み出すさいには、不揮発性メモリのメモリマップとア
プリケーションが有する揮発性メモリ内でのメモリマッ
プとを対応付け、オブジェクトの関連を復元する。
According to the Nikkei Intelligent Systems separate volume "Object Oriented Database", there is an object oriented DB as a system for managing the relation between objects in a non-volatile memory. According to the Object Store manual, the Object Store, which is one of the object-oriented DBs, creates a memory map for managing objects in the Object Store based on the declaration information of the class of the application that uses the Object Store. The information of the value of the object in the volatile memory included in is stored in the non-volatile memory. When reading an object, the memory map of the non-volatile memory and the memory map in the volatile memory of the application are associated with each other to restore the relationship between the objects.

【0008】[0008]

【発明が解決しようとする課題】従来のプログラムで
は、クラス毎にオブジェクト間の関連を管理していたの
で、似たような処理を各クラス毎に実装していたので、
開発工数を要するだけでなく保守工数も要していた。
In the conventional program, since the relation between objects is managed for each class, similar processing is implemented for each class.
Not only development man-hours were required, but maintenance man-hours were also required.

【0009】オブジェクト間の関連をリンクオブジェク
トを用いて1つの関連表で表現する方法では、関連表に
対する処理は1ヶ所にまとめられるが、アプリケーショ
ン内のオブジェクト間の関連を全て1つの関連表で管理
するため、関連表内の要素の数が膨大になり、検索時間
や削除時間が遅くなる問題があった。
In the method of expressing the relation between objects in one relation table by using the link object, the processing for the relation table can be summarized in one place, but all relations between objects in the application are managed in one relation table. Therefore, there is a problem that the number of elements in the related table becomes huge and the search time and the deletion time are delayed.

【0010】また従来の方法では、ファイルやDBから
揮発性メモリ上にオブジェクトを読み込んだり格納した
りする処理をアプリケーション毎に記述する必要があっ
た。
Further, in the conventional method, it is necessary to describe a process of reading or storing an object from a file or a DB on a volatile memory for each application.

【0011】さらに、オブジェクト間の関連をプログラ
ムのコンパイル時に決定していたため、特殊な条件で必
要となるオブジェクト間の関連を必ずクラスヘッダに定
義しておく必要があった。例えば、銀行の融資オブジェ
クトは、返済期限が過ぎた場合には、延滞オブジェクト
を有する必要がある。従来の方法では、必ず延滞オブジ
ェクトとの関連を有していた。
Further, since the relation between objects is determined at the time of compiling the program, it is necessary to define the relation between objects required under special conditions in the class header without fail. For example, a bank loan object must have an overdue object if the repayment date has passed. In the conventional method, there is always an association with the overdue object.

【0012】[0012]

【課題を解決するための手段】隣接リスト管理リストを
有するクラスを設ける。このようなクラスをオブジェク
トクラスと呼ぶ。オブジェクトクラスは、隣接リスト管
理リストが有する隣接リストに対して、要素の追加/削
除/検索等の操作を有している。各アプリケーション毎
に必要となるクラスは、オブジェクトクラスを継承して
開発する。継承したクラスが必要となるオブジェクト間
の隣接リストを、隣接リスト管理リストに登録すること
で、オブジェクトクラスは、隣接リストに対する操作が
可能になる。本方法では、オブジェクト毎に隣接リスト
管理リストを有することになるので、管理するオブジェ
クト間の関連情報は1つのオブジェクトにおける情報に
限定できるため、高速に追加/削除/検索等の操作がで
きる。
A class having an adjacency list management list is provided. Such a class is called an object class. The object class has operations such as element addition / deletion / search for the adjacency list included in the adjacency list management list. The classes required for each application are developed by inheriting the object class. By registering the adjacency list between objects, which the inherited class requires, in the adjacency list management list, the object class can operate on the adjacency list. In this method, since the adjacent list management list is provided for each object, the related information between the managed objects can be limited to the information in one object, so that operations such as addition / deletion / search can be performed at high speed.

【0013】さらに、本発明では、オブジェクト構築中
に隣接リストを隣接リスト管理リストに登録することで
オブジェクト間の関連をはかるため、特殊な条件で必要
な関連を、常にオブジェクトに持たせる必要がなくな
る。
Further, according to the present invention, since the relationship between objects is established by registering the adjacency list in the adjacency list management list during object construction, it is not necessary to always provide the object with the necessary relationship under special conditions. .

【0014】[0014]

【発明の実施の形態】以下、本発明を金融関係に適用し
た場合の実施例を、詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention applied to financial relations will be described in detail below.

【0015】図3は本発明のハードウエア構成図を示
し、302は本発明のプログラムを実行するCPU、3
05は本発明のプログラムや解析対象となるプログラム
を記憶する外部記憶装置、301は本発明で解析するプ
ログラムを一時的に記憶する主記憶装置、303はプロ
グラムを実行するための入力装置、304は本発明の実
行結果を表示する装置である。
FIG. 3 shows a hardware configuration diagram of the present invention, and 302 is a CPU for executing the program of the present invention, 3
Reference numeral 05 is an external storage device for storing the program of the present invention or a program to be analyzed, 301 is a main storage device for temporarily storing the program to be analyzed by the present invention, 303 is an input device for executing the program, and 304 is It is a device for displaying the execution result of the present invention.

【0016】図2は、金融関係のクラスと本発明を含め
たクラス構造を示す。本発明に該当する部分は、コンテ
ナ管理クラス201、オブジェクト管理クラス202、
オブジェクトクラス203、隣接リスト管理リストクラ
ス204、隣接リスト205から構成されている。又金
融関係のクラスは、営業店クラス206、通帳クラス2
07、顧客クラス208の3クラスでオブジェクトクラ
スを継承している。
FIG. 2 shows a class structure including financial classes and the present invention. The part corresponding to the present invention is a container management class 201, an object management class 202,
It is composed of an object class 203, a neighbor list management list class 204, and a neighbor list 205. In addition, financial-related classes are branch office class 206 and passbook class 2.
07 and customer class 208 inherit the object class.

【0017】外部からオブジェクトを参照するためのク
ラスキーとして営業店クラスは店名を、通帳クラスは顧
客番号を、顧客クラスは顧客名とする。クラスキーの指
定方法はクラスキー登録メソッドを用いて行なう。
As a class key for externally referencing an object, a sales office class is a store name, a passbook class is a customer number, and a customer class is a customer name. The class key is specified using the class key registration method.

【0018】金融関係クラスの個々の生成オブジェクト
の管理方法は、生成したオブジェクトに対しオブジェク
トクラスの属性のオブジェクトIDに固有値を与え、そ
して動的に作成したオブジェクト管理クラスのコンテナ
に該生成オブジェクトの実体ポインタを格納する。又作
成したコンテナの管理はコンテナ管理クラスのコンテナ
管理リストで行なう。格納するコンテナを分別したい場
合は、コンテナ名登録メソッドを用いてコンテナ名を定
義する。
The management method of each generated object of the financial relation class is such that a unique value is given to the object ID of the attribute of the object class for the generated object, and the entity of the generated object is added to the container of the dynamically created object management class. Store a pointer. The created container is managed by the container management list of the container management class. If you want to sort the containers to be stored, define the container name using the container name registration method.

【0019】オブジェクトの関連情報の管理方法は、関
連する相手コンテナ単位に隣接リストを作成し、関連す
る相手オブジェクトの参照ポインタか又はオブジェクト
IDのどちらかを隣接リストに設定する。隣接リスト管
理リストは、1つ以上の隣接リストを集約して管理す
る。又隣接リスト名の定義は隣接リスト名登録メソッド
を用いて行い、定義されていない場合は、隣接リスト管
理リスト及び隣接リストは作成しない。クラスキー登録
メソッド、コンテナ名登録メソッド、隣接リスト名登録
メソッドの各メソッドはオブジェクト構築中に呼び出さ
れるので、オブジェクト単位に登録内容を変更すること
ができ、又該メソッドを仮想関数にすることによりクラ
ス単位に登録内容を変更することもできる。
In the method of managing the related information of an object, an adjacency list is created for each associated partner container, and either the reference pointer or the object ID of the associated partner object is set in the adjacency list. The adjacency list management list aggregates and manages one or more adjacency lists. The adjacency list name is defined using the adjacency list name registration method. If it is not defined, the adjacency list management list and adjacency list are not created. Since each of the class key registration method, container name registration method, and adjacency list name registration method is called during object construction, the registered contents can be changed on an object-by-object basis. You can also change the registered contents in units.

【0020】3つの金融関係クラスの関連情報をどのよ
うにして保有しているかを図2と図4により説明する。
How to retain the relevant information of the three financial relation classes will be described with reference to FIGS. 2 and 4.

【0021】営業店クラス206は通帳クラス207と
1対多の関連をもつ。営業店オブジェクト406は、店
名は東京支店で、オブジェクトIDは01、営業店コン
テナ413に所属し、そして隣接リスト管理リスト41
0をもち、通帳隣接リスト401を有する。通帳隣接リ
ストの内容は、通帳オブジェクト407と409のそれ
ぞれのオブジェクトID02、04を有する。
The sales office class 206 has a one-to-many relationship with the passbook class 207. The sales office object 406 has a shop name of Tokyo branch, an object ID of 01, belongs to a sales office container 413, and an adjacency list management list 41.
It has 0 and has a passbook adjacency list 401. The contents of the passbook adjacency list have object IDs 02 and 04 of passbook objects 407 and 409, respectively.

【0022】通帳クラス207は、顧客クラス208に
対してただ1つの関連をもつ。通帳オブジェクト407
は、顧客番号は001で、オブジェクトIDが02、通
帳コンテナ414に所属し、そして隣接リスト管理リス
ト411と、営業店隣接リスト402と顧客隣接リスト
403を有する。営業店隣接リストは、営業店オブジェ
クト406のオブジェクトID01を有し、顧客隣接リ
スト403は、顧客オブジェクト408のオブジェクト
ID03を有する。
The passbook class 207 has only one association with the customer class 208. Passbook object 407
Has a customer number of 001, an object ID of 02, belongs to a passbook container 414, and has an adjacency list management list 411, a branch office adjacency list 402, and a customer adjacency list 403. The business office adjacency list has the object ID 01 of the business office object 406, and the customer adjacency list 403 has the object ID 03 of the customer object 408.

【0023】もう1つの通帳オブジェクト409は、顧
客番号は002で、オブジェクトIDが04、通帳コン
テナ414に所属し、そして隣接リスト管理リスト41
2と、営業店隣接リスト404と顧客隣接リスト405
を有する。営業店隣接リスト404は営業店オブジェク
ト406のオブジェクトID01を有し、顧客隣接リス
ト405は顧客オブジェクト408のオブジェクトID
03を有する。顧客クラスは、複数の通帳をもつ1対多
の関連である。顧客オブジェクト408は、顧客名が山
田太郎でオブジェクトIDが03、顧客コンテナ415
に所属する。隣接リスト管理リストと隣接リストは有し
ていない。
Another passbook object 409 has a customer number of 002, an object ID of 04, belongs to a passbook container 414, and has an adjacency list management list 41.
2, a store adjacency list 404 and a customer adjacency list 405
Having. The sales office adjacency list 404 has the object ID 01 of the sales office object 406, and the customer adjacency list 405 is the object ID of the customer object 408.
03. A customer class is a one-to-many association with multiple passbooks. The customer object 408 has a customer name Taro Yamada, an object ID 03, and a customer container 415.
Belong to. It does not have a neighbor list management list and a neighbor list.

【0024】上記に示したようなデータ構造は、1対
1、1対多、多対多の関連を全てサポートしている。こ
のデータ構造を各オブジェクト間の関連に繰り返し適用
し、システム全体の関連を統一的に扱うことによって、
今まで各クラスが実装していた関連に対する生成/追加
/検索/探索/削除などのオブジェクト操作のメソッド
を汎化して共通化することができる。
The data structure as shown above supports all one-to-one, one-to-many, and many-to-many associations. By repeatedly applying this data structure to the relationship between each object and treating the relationship of the entire system uniformly,
It is possible to generalize and make common the object operation methods such as generation / addition / search / search / deletion for the associations that each class has implemented up to now.

【0025】本発明を使用してオブジェクト操作を行っ
た実施例を、メモリとファイル間のオブジェクトの状態
を示しながら図5に示す。
An embodiment in which an object is manipulated using the present invention is shown in FIG. 5 showing the states of objects between a memory and a file.

【0026】501から507までの点線より上半分
(Mの領域)は、メモリ上のオブジェクトの状態を示
し、下半分(Hの領域)は、ファイル上のオブジェクト
の状態を示している。又501から507の中のオブジ
ェクト図は図3にもとづき、オブジェクトIDのみを記
す。
The upper half (area M) of the dotted lines 501 to 507 shows the state of the object on the memory, and the lower half (area H) shows the state of the object on the file. The object diagram in 501 to 507 is based on FIG. 3, and only the object ID is shown.

【0027】オブジェクトが何も生成されていない状態
501から、オブジェクトID01を生成するためにオ
ブジェクトクラスの生成メソッド(ステップ508)を
呼び出すと、該オブジェクトが生成され502の状態に
なる。次に502の状態でオブジェクトID02を生成
するために追加メソッド(ステップ509)を呼び出す
と、該オブジェクトIDが生成され、オブジェクトID
01と関連付けられる。オブジェクトID03,04も
同様に繰り返し503の状態になる。続いて503の状
態で格納メソッド(ステップ510)を呼び出すと、オ
ブジェクトID01、02、03、04はファイル上に
格納され、メモリ上のオブジェクトは消去された状態5
04になる。次に504の状態でオブジェクトID01
を起点に選択して検索メソッド(ステップ511)を呼
び出すと、メモリ上にオブジェクトID01、02、0
3、04のオブジェクトが再び展開され505の状態に
なる。このとき、メモリ上に展開する隣接リストを限定
することにより、参照更新に必要なオブジェクトだけを
展開することもできる。又、メモリ上に展開されたオブ
ジェクトの上の情報は、次の格納メソッドが呼び出され
るまで展開前の情報を保存する。次に505の状態で、
オブジェクトID01と関係する顧客オブジェクトを参
照するために検索メソッド(ステップ512)を呼び出
すと、オブジェクトID03のポインタを取得した状態
506になる。506の状態で、先程取得したオブジェ
クトID03に対し削除メソッド(ステップ513)を
呼び出すと、オブジェクトID03が削除された状態5
07になる。削除されたオブジェクトは、格納時にファ
イル上に反映される。
When an object class generation method (step 508) is called to generate an object ID 01 from a state 501 in which no object has been generated, the object is generated and the state of 502 is entered. Next, when the additional method (step 509) is called to generate the object ID 02 in the state of 502, the object ID is generated, and the object ID is generated.
Associated with 01. The object IDs 03 and 04 also repeat the state of 503. Next, when the storage method (step 510) is called in the state of 503, the object IDs 01, 02, 03, 04 are stored in the file, and the objects in the memory are erased.
04. Next, in the state of 504, the object ID 01
When the search method (step 511) is selected by selecting as the starting point, the object IDs 01, 02, 0 are stored in the memory.
The objects of 3, 04 are expanded again to be in the state of 505. At this time, it is possible to expand only the objects required for reference updating by limiting the adjacency list expanded in the memory. As the information on the object expanded on the memory, the information before expansion is saved until the next storage method is called. Next, in the state of 505,
When the search method (step 512) is called to refer to the customer object related to the object ID 01, the state 506 in which the pointer of the object ID 03 is acquired is obtained. In the state of 506, when the delete method (step 513) is called for the object ID 03 acquired earlier, the state 5 in which the object ID 03 is deleted
07. The deleted object is reflected in the file when stored.

【0028】以上のような操作を行なうメソッドのイン
タフェースを、継承したクラスに提供することにより、
継承したクラスはオブジェクト操作に関するメソッドの
実装を行なう必要がなく、又ファイルの種類に依存しな
い実装が可能になるという効果がある。
By providing the inherited class with the interface of the method for performing the above operation,
The inherited class does not need to implement the method related to the object operation, and has the effect that it can be implemented regardless of the file type.

【0029】図1にオブジェクト操作の1実施例として
検索メソッドをフローチャートで示す。検索メソッド
は、既にファイルに格納されたオブジェクトとオブジェ
クト間の関連情報をもとに、呼び出し元が指定したオブ
ジェクトを起点として連鎖するオブジェクトをメモリ上
に復元するメソッドである。
FIG. 1 is a flowchart showing a search method as an example of object operation. The search method is a method for restoring an object chained from the object specified by the caller as a starting point on the memory, based on the object already stored in the file and the related information between the objects.

【0030】最初に既にメモリ上に展開されているオブ
ジェクトを全てファイルに格納し、メモリ上のオブジェ
クトは消去する(ステップ101)。次に起点となるオ
ブジェクトを復元する(ステップ102)。復元の順序
は、該オブジェクトを生成し、該オブジェクトと一致す
るオブジェクトデータをファイルから読み込み、該オブ
ジェクトポインタに再設定する。オブジェクトデータ
は、オブジェクトID、クラス名、クラスキー、隣接リ
スト及び継承クラスの属性値データから構成されてい
る。続いて、起点オブジェクトから取得した隣接リスト
(ステップ103)の解析(ステップ104からステッ
プ109までの範囲)を開始する。隣接リストの要素か
ら隣接オブジェクトを取得し(ステップ105)、取得
した隣接オブジェクトを復元し(ステップ107)、復
元した該オブジェクトをキューに追加する(ステップ1
08)。但し、該隣接オブジェクトが復元済ならば(ス
テップ106)、ステップ107と108はスキップす
る。隣接リストの解析を終了したら(ステップ10
9)、キューの状態を確認する(ステップ110)。キ
ューが空でない場合、キューから隣接オブジェクトを取
得し(ステップ111)、取得した隣接オブジェクトの
隣接リストを取得し(ステップ112)、該隣接リスト
の解析を再び開始する(ステップ104に戻る)。キュ
ーに格納された隣接オブジェクトが全て取り出され空に
なった場合、検索メソッドは終了する。
First, all the objects already developed in the memory are stored in the file, and the objects in the memory are erased (step 101). Next, the object serving as the starting point is restored (step 102). As for the order of restoration, the object is generated, the object data that matches the object is read from the file, and the object pointer is reset. The object data is composed of an object ID, a class name, a class key, an adjacency list, and attribute value data of the inherited class. Then, the analysis (range from step 104 to step 109) of the adjacency list (step 103) acquired from the starting point object is started. An adjacent object is acquired from the elements of the adjacent list (step 105), the acquired adjacent object is restored (step 107), and the restored object is added to the queue (step 1).
08). However, if the adjacent object has been restored (step 106), steps 107 and 108 are skipped. When the analysis of the neighbor list is completed (step 10
9) Confirm the queue status (step 110). If the queue is not empty, the adjacent object is acquired from the queue (step 111), the adjacent list of the acquired adjacent objects is acquired (step 112), and the analysis of the adjacent list is started again (return to step 104). When all the neighboring objects stored in the queue have been extracted and become empty, the search method ends.

【0031】このフローに従うと、メモリ上には起点オ
ブジェクトに対し連鎖するオブジェクトが各コンテナに
格納されている。起点オブジェクトの指定が変われば、
同じ名前のコンテナでも変更した起点オブジェクトに連
鎖したオブジェクトが入れ替わって格納される。オブジ
ェクト操作を行うメソッドの1つ探索メソッドは、取得
したいオブジェクトのコンテナ名を指定することにより
起点オブジェクトに対する該オブジェクトを取得でき
る。図4で説明すると起点を営業店オブジェクト406
にした場合、該顧客オブジェクトは顧客コンテナに格納
されている顧客オブジェクト408となる。このメソッ
ドを使用することにより、取得したいオブジェクトと起
点オブジェクトの間のオブジェクトの関連が変更になっ
ても取得したい相手が変わらない限り、同じメソッドを
使用することができるという利点がある。
According to this flow, objects linked to the origin object are stored in the respective containers on the memory. If the designation of the starting object changes,
Even in the container with the same name, the objects linked to the changed starting object are replaced and stored. The search method, which is one of the methods for operating an object, can acquire the object for the starting object by specifying the container name of the object to be acquired. Referring to FIG. 4, the starting point is a sales office object 406.
In the case of, the customer object becomes the customer object 408 stored in the customer container. By using this method, there is an advantage that the same method can be used as long as the partner to be acquired does not change even if the object relation between the object to be acquired and the origin object changes.

【0032】[0032]

【発明の効果】本発明は、オブジェクト間の関連を定義
する実装手段がメソッドによる指定なので、関連に関す
る定義が容易に追加、変更できる。又関連に対する追
加、削除、検索等のオブジェクト操作は、メソッドイン
タフェースを呼び出すだけで実現できる。又検索時間
が、従来の方法と比較して速い。
According to the present invention, the implementation means for defining the relation between objects is designated by the method, so that the definition regarding the relation can be easily added or changed. Further, object operations such as addition, deletion, and search for associations can be realized simply by calling the method interface. Also, the search time is faster than the conventional method.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の1実施例を示すフローチャート。FIG. 1 is a flowchart showing an embodiment of the present invention.

【図2】本発明のハードウエア構成図。FIG. 2 is a hardware configuration diagram of the present invention.

【図3】本発明の実現するオブジェクト図。FIG. 3 is an object diagram realized by the present invention.

【図4】本発明を1実施例をもとに表現したデータの構
造のイメージ図。
FIG. 4 is an image diagram of a data structure expressing the present invention based on an embodiment.

【図5】本発明の実施例を、メモリとファイル間でのオ
ブジェクトの状態と対比して示した図。
FIG. 5 is a diagram showing an embodiment of the present invention in comparison with a state of an object between a memory and a file.

【符号の説明】[Explanation of symbols]

201…コンテナ管理リストクラス、202…オブジェ
クト管理クラス、203…オブジェクトクラス、
204…隣接リスト管理リストクラス、205…隣接リ
ストクラス。
201 ... Container management list class, 202 ... Object management class, 203 ... Object class,
204 ... Neighbor list management list class, 205 ... Neighbor list class.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】アプリケーションシステム実行中に、アプ
リケーションシステム内のオブジェクトとオブジェクト
間の関連の情報を、ファイルあるいはデータベースから
読み込んで更新又は参照を行い、再びファイルあるいは
データベースへ格納するシステムにおいて、オブジェク
ト間の関連を管理する隣接リストを複数管理する隣接リ
スト管理リストと、該隣接リスト管理リストを有するク
ラスを用意し、アプリケーション毎に必要とするクラス
を該クラスを継承して開発し、各継承したクラス毎に必
要となる隣接リストを、隣接リスト管理リストに登録す
ることで、複数のオブジェクト間の関連に対する検索、
追加、削除等の操作を該クラスで行うことを特徴とする
オブジェクト管理方法。
1. In a system in which an object in an application system and information relating to the object are read from a file or a database, updated or referenced, and stored again in the file or the database during execution of the application system An adjacency list management list for managing a plurality of adjacency lists for managing associations and a class having the adjacency list management list are prepared, and a class required for each application is developed by inheriting the class, and for each inherited class By registering the adjacency list required for the adjacency list management list, search for the relationship between multiple objects,
An object management method characterized in that operations such as addition and deletion are performed in the class.
【請求項2】各継承したクラス毎に必要となる隣接リス
トを、隣接リスト管理リストに登録することを実行時に
行うことで、オブジェクト単位にクラス間の組み替えが
できることを特徴とする請求項1記載のオブジェクト管
理方法。
2. The class can be rearranged in object units by registering the adjacency list required for each inherited class in the adjacency list management list at the time of execution. Object management method.
【請求項3】あるオブジェクトを起点とし複数の関連を
経由して連鎖するオブジェクトの情報を取得することが
できる操作を備えたことを特徴とする請求項1記載のオ
ブジェクト管理方法。
3. The object management method according to claim 1, further comprising an operation capable of acquiring information on objects chained via a plurality of associations starting from an object.
JP7342233A 1995-12-28 1995-12-28 Object management method Pending JPH09185542A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7342233A JPH09185542A (en) 1995-12-28 1995-12-28 Object management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7342233A JPH09185542A (en) 1995-12-28 1995-12-28 Object management method

Publications (1)

Publication Number Publication Date
JPH09185542A true JPH09185542A (en) 1997-07-15

Family

ID=18352152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7342233A Pending JPH09185542A (en) 1995-12-28 1995-12-28 Object management method

Country Status (1)

Country Link
JP (1) JPH09185542A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005505849A (en) * 2001-10-19 2005-02-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ How to compile bytecode into native code
WO2006041104A1 (en) * 2004-10-13 2006-04-20 Nissay Information Technology Co., Ltd. Data management device and its method

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005505849A (en) * 2001-10-19 2005-02-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ How to compile bytecode into native code
WO2006041104A1 (en) * 2004-10-13 2006-04-20 Nissay Information Technology Co., Ltd. Data management device and its method
JPWO2006041104A1 (en) * 2004-10-13 2008-05-15 ニッセイ情報テクノロジー株式会社 Data management apparatus and method
JP2010015593A (en) * 2004-10-13 2010-01-21 Nissay Information Technology Co Ltd Data management apparatus and method thereof
JP2010015592A (en) * 2004-10-13 2010-01-21 Nissay Information Technology Co Ltd Data management apparatus and method thereof
JP4516084B2 (en) * 2004-10-13 2010-08-04 ニッセイ情報テクノロジー株式会社 Data management apparatus and method
US8554582B2 (en) 2004-10-13 2013-10-08 Nissay Information Technology Co., Ltd. Data management apparatus and method thereof
US8694344B2 (en) 2004-10-13 2014-04-08 Nissay Information Technology Co., Ltd. Data management apparatus and method thereof

Similar Documents

Publication Publication Date Title
US7308704B2 (en) Data structure for access control
US6240422B1 (en) Object to relational database mapping infrastructure in a customer care and billing system
US6601023B1 (en) Method for impact analysis of a model
US20050044396A1 (en) Managing access control information
US5499365A (en) System and method for controlling versions of objects in an object oriented computing environment
US8738663B2 (en) Rule-based transformation of metadata
US6216140B1 (en) Methodology for the efficient management of hierarchically organized information
US7539689B2 (en) Bundling database
CN104781812A (en) Policy driven data placement and information lifecycle management
US20030041069A1 (en) System and method for managing bi-directional relationships between objects
US12001409B2 (en) Merges using key range data structures
US6453324B1 (en) Method for maintaining a version history of objects in a repository
US5890160A (en) Object representation of relational database cells having nontraditional large object datatypes
US6859919B1 (en) Object modeling tool with meta model semantic registry (rules) a meta data manager for object(s) properties an object/property interface for instance(s) of objects/properties received via object/property interface of the object factory registry
US20240111746A1 (en) Key permission distribution
JP2002342142A (en) Write control method, device for managing structured document, device for editing structured document, and program
US9009731B2 (en) Conversion of lightweight object to a heavyweight object
JPH09185542A (en) Object management method
CN112115115B (en) File moving method, equipment and storage medium based on data warehouse
US8560572B2 (en) System for lightweight objects
JP3484440B2 (en) Distributed database update method
US20230237035A1 (en) Fast Skip-List Scan and Insert
JPH07152615A (en) Data base reorganization system
US7624115B1 (en) Backward reference in a persistent data target object within a unidirectional relational database relationship
Jyoti et al. Salesforce Data Architecture