(57)【要約】【課題】アプリケーションがデータベースにアクセスする際に使用する設定ファイルを生成することにより、装置の記憶容量を効率的に使用し、かつ生産効率を向上させる。【解決手段】情報処理装置２０１は、アプリケーションのプログラムコードに含まれるアプリケーションクラスから抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するための第１のアクセス命令抽出部５２と、所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれアクセス命令を抽出するための第２のアクセス命令抽出部５３と、抽出されたアクセス命令に基づいて、複数の定義ファイルの中から、アプリケーションが使用するアクセス命令が定義された定義ファイルを選択し、選択した定義ファイルを示す設定ファイルを生成するための設定ファイル生成部５５とを備える。【選択図】図２
2011248631.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するためのデータアクセスクラス抽出部と、
抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するための第１のアクセス命令抽出部と、
前記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ前記アクセス命令を抽出するための第２のアクセス命令抽出部と、
前記第１のアクセス命令抽出部によって抽出された前記アクセス命令と前記第２のアクセス命令抽出部によって抽出された前記アクセス命令とに基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成するための設定ファイル生成部とを備える、情報処理装置。
【請求項２】
前記第１のアクセス命令抽出部は、前記アプリケーションクラスと前記データアクセスクラスから抽出した前記アクセス命令との対応関係を示す第１の対応情報を生成し、
前記第２のアクセス命令抽出部は、前記定義ファイルと前記定義ファイルから抽出した前記アクセス命令との対応関係を示す第２の対応情報を生成し、
前記情報処理装置は、さらに、
前記第１の対応情報および前記第２の対応情報に基づいて前記アプリケーションクラスと前記定義ファイルとの対応関係を示す第３の対応情報を生成するためのマッピング部を備え、
前記設定ファイル生成部は、前記第３の対応情報に基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成する、請求項１に記載の情報処理装置。
【請求項３】
前記アクセス命令はＳＱＬ（Structured Query Language）によって記述され、前記定義ファイルはＸＭＬ（Extensible Markup Language）によって記述され、前記定義ファイルはＯ／Ｒマッピング（Object/Relational Mapping）用の定義ファイルである、請求項１または２に記載の情報処理装置。
【請求項４】
アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するステップと、
抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するステップと、
前記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ前記アクセス命令を抽出するステップと、
前記データアクセスクラスから抽出された前記アクセス命令と前記定義ファイルから抽出された前記アクセス命令とに基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成するステップとを含む、設定ファイル生成方法。
【請求項５】
コンピュータに、
アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するステップと、
抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するステップと、
前記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ前記アクセス命令を抽出するステップと、
前記データアクセスクラスから抽出された前記アクセス命令と前記定義ファイルから抽出された前記アクセス命令とに基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成するステップとを実行させる、設定ファイル生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、設定ファイル生成方法、および設定ファイル生成プログラムに関し、特に、アプリケーションがデータベースにアクセスする際に使用する設定ファイルを生成する情報処理装置、設定ファイル生成方法、および設定ファイル生成プログラムに関する。
【背景技術】
【０００２】
Ｏ／Ｒマッピング（Object/Relational Mapping）ツールの１つであるｉＢＡＴＩＳでは、複数のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルと、これらのｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルのうちのどのファイルを使用するかを指定するためのＯ／Ｒマッピング設定ファイルとを使用することにより、Ｏ／Ｒマッピング処理において使用するＳＱＬ（Structured Query Language）文をメモリにロードする。
【０００３】
Ｏ／Ｒマッピング等、データベースへのアクセス処理を行なう方法の一例として、たとえば、特許文献１（特開２００１−１７５６７８号公報）には、以下のような技術が開示されている。すなわち、データベース・チューニング装置は、トランザクションとＳＱＬとの対応関係を記述した設計情報を作成するシステム設計ツールと、設計情報を格納する設計情報格納部と、設計情報に基づいてトランザクションごとのＳＱＬの実行順序を抽出する実行順序抽出部と、抽出されたトランザクションごとのＳＱＬの実行順序を格納する実行順序格納部と、データベースに対するＳＱＬの実行履歴を格納する実行履歴格納部と、実行順序格納部および実行履歴格納部に格納されている情報に基づいてトランザクションの統計情報を計算する統計情報計算部と、計算された統計情報を格納する統計情報格納部とを備える。
【０００４】
また、特許文献２（特開２００６−１５５２８７号公報）には、以下のような技術が開示されている。すなわち、オブジェクト要求に対して、要求されたオブジェクトがキャッシュに存在するときは、該キャッシュから上記オブジェクトを取得して返却し、キャッシュに存在しないときは、リレーショナルデータベースのレコードからオブジェクトを作成し、上記キャッシュに記憶させて、返却するＯ／Ｒマッピング装置であって、オブジェクト間の関連に関する関連オブジェクト情報を取得する手段と、取得した関連オブジェクト情報に従って、返却したオブジェクトに直接関連するオブジェクトを特定する関連オブジェクト特定手段と、特定された関連オブジェクトが上記キャッシュに存在するか否かを確認する手段と、特定された関連オブジェクトが上記キャッシュに存在しないときは、上記リレーショナルデータベースのレコードから関連オブジェクトを作成し、上記キャッシュに記憶させる関連オブジェクト記憶手段とを備える。要求されたオブジェクトの返却後、次のオブジェクト要求を受けるまでの間に特定された関連オブジェクトを上記キャッシュに記憶させる。
【０００５】
また、特許文献３（特開平５−１６５８９１号公報）には、以下のような技術が開示されている。すなわち、ランダムな順に入力されるデータのうち検索キーとなるデータ部分を一定規則に従って並ぶように変更するとともに、検索キーとなる変更前のデータ部分と変更後のデータ部分との対応表を作成する登録データ作成手段を設ける。この登録データ作成手段によって検索キーとなるデータ部分が変更されたデータをデータベースに登録し、登録されたデータの検索時は入力された検索キーを上記対応表に従って変換し、その変換後の検索キーによってデータベースを検索する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−１７５６７８号公報
【特許文献２】特開２００６−１５５２８７号公報
【特許文献３】特開平５−１６５８９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
Ｏ／Ｒマッピング設定ファイルは、アプリケーションが使用するｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを特定するためのファイルである。
【０００８】
Ｏ／Ｒマッピング設定ファイルにおいて、アプリケーションが使用しないｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルが多数指定された場合には、メモリ量を無駄に使用してしまうことになる。
【０００９】
したがって、アプリケーションが使用するｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを過不足なくＯ／Ｒマッピング設定ファイルにおいて指定することは、システムを構築する上で非常に重要である。
【００１０】
従来のｉＢＡＴＩＳの環境設定支援ツールでは、データアクセスクラスの作成時にＯ／Ｒマッピング設定ファイル等のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇ関連のファイルを作成し、作成したファイルをメモリにロードするといった方法が一般的である。
【００１１】
このため、最終的に出来上がったアプリケーションの機能に応じて必要なｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを特定することができないことから、人手によって必要なｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを指定せざるを得ないため、生産効率が低いという問題点があった。
【００１２】
しかしながら、特許文献１〜３には、このような問題点を解決するための構成は開示されていない。
【００１３】
この発明は、上述の課題を解決するためになされたもので、その目的は、アプリケーションがデータベースにアクセスする際に使用する設定ファイルを生成することにより、装置の記憶容量を効率的に使用し、かつ生産効率を向上させることが可能な情報処理装置、設定ファイル生成方法、および設定ファイル生成プログラムを提供することである。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、この発明のある局面に係わる情報処理装置は、アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するためのデータアクセスクラス抽出部と、抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するための第１のアクセス命令抽出部と、上記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ上記アクセス命令を抽出するための第２のアクセス命令抽出部と、上記第１のアクセス命令抽出部によって抽出された上記アクセス命令と上記第２のアクセス命令抽出部によって抽出された上記アクセス命令とに基づいて、上記複数の定義ファイルの中から、上記アプリケーションが使用する上記アクセス命令が定義された上記定義ファイルを選択し、選択した上記定義ファイルを示す設定ファイルを生成するための設定ファイル生成部とを備える。
【００１５】
上記課題を解決するために、この発明のある局面に係わる設定ファイル生成は、アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するステップと、抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するステップと、上記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ上記アクセス命令を抽出するステップと、上記データアクセスクラスから抽出された上記アクセス命令と上記定義ファイルから抽出された上記アクセス命令とに基づいて、上記複数の定義ファイルの中から、上記アプリケーションが使用する上記アクセス命令が定義された上記定義ファイルを選択し、選択した上記定義ファイルを示す設定ファイルを生成するステップとを含む。
【００１６】
上記課題を解決するために、この発明のある局面に係わる設定ファイル生成プログラムは、コンピュータに、アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するステップと、抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するステップと、上記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ上記アクセス命令を抽出するステップと、上記データアクセスクラスから抽出された上記アクセス命令と上記定義ファイルから抽出された上記アクセス命令とに基づいて、上記複数の定義ファイルの中から、上記アプリケーションが使用する上記アクセス命令が定義された上記定義ファイルを選択し、選択した上記定義ファイルを示す設定ファイルを生成するステップとを実行させる。
【発明の効果】
【００１７】
本発明によれば、アプリケーションがデータベースにアクセスする際に使用する設定ファイルを生成することにより、装置の記憶容量を効率的に使用し、かつ生産効率を向上させることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態に係る情報処理装置の概略構成図である。
【図２】本発明の実施の形態に係る情報処理装置が提供する制御構造を示すブロック図である。
【図３】本発明の実施の形態に係る情報処理装置において生成される業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表の一例を示す図である。
【図４】本発明の実施の形態に係る情報処理装置において生成されるＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表の一例を示す図である。
【図５】本発明の実施の形態に係る情報処理装置において生成される業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表の一例を示す図である。
【図６】本発明の実施の形態に係る情報処理装置がＯ／Ｒマッピング設定ファイル生成処理を行なう際の動作手順を示すフローチャートである。
【図７】本発明の実施の形態に係る情報処理装置における業務バッチアプリケーションクラスの具体例を示す図である。
【図８】本発明の実施の形態に係る情報処理装置におけるデータアクセスクラス抽出部のオートマトンの一例を示す図である。
【図９】本発明の実施の形態に係る情報処理装置におけるデータアクセスクラスの具体例を示す図である。
【図１０】本発明の実施の形態に係る情報処理装置におけるＳＱＬ−ＩＤ抽出部５２のオートマトンの一例を示す図である。
【図１１】本発明の実施の形態に係る情報処理装置におけるＸＭＬ定義ファイルの具体例を示す図である。
【図１２】本発明の実施の形態に係る情報処理装置におけるＳＱＬ−ＩＤ抽出部５３のオートマトンの一例を示す図である。
【図１３】本発明の実施の形態に係る情報処理装置が生成する設定ファイルの具体例を示す図である。
【発明を実施するための形態】
【００１９】
本発明の実施の形態に係る情報処理装置は、典型的には、汎用的なアーキテクチャを有するコンピュータを基本構造としており、予めインストールされたプログラムを実行することで、後述するような各種機能を提供する。一般的に、このようなプログラムは、フレキシブルディスク（Flexible Disk）およびＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの記録媒体に格納されて、あるいはネットワークなどを介して流通する。
【００２０】
本発明の実施の形態に係るプログラムは、ＯＳ等の他のプログラムの一部に組み込まれて提供されるものであってもよい。この場合でも、本発明の実施の形態に係るプログラム自体は、上記のような組み込み先の他のプログラムが有するモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本発明の実施の形態に係るプログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。
【００２１】
なお、代替的に、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
【００２２】
［装置構成］
以下、本発明の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
【００２３】
図１は、本発明の実施の形態に係る情報処理装置の概略構成図である。図１を参照して、情報処理装置２０１は、演算処理部であるＣＰＵ（Central Processing Unit）１０１と、メインメモリ１０２と、ハードディスク１０３と、入力インターフェイス１０４と、表示コントローラ１０５と、データリーダ／ライタ１０６と、通信インターフェイス１０７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００２４】
ＣＰＵ１０１は、ハードディスク１０３に格納されたプログラム（コード）をメインメモリ１０２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１０２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）などの揮発性の記憶装置であり、ハードディスク１０３から読み出されたプログラムに加えて、各種の演算処理結果を示すデータなどを保持する。また、ハードディスク１０３は不揮発性の磁気記憶装置であり、ＣＰＵ１０１で実行されるプログラムに加えて、各種設定値などが格納される。このハードディスク１０３にインストールされるプログラムは、後述するように、記録媒体１１１に格納された状態で流通する。なお、ハードディスク１０３に加えて、あるいはハードディスク１０３に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
【００２５】
入力インターフェイス１０４は、ＣＰＵ１０１とキーボード１０８、マウス１０９および図示しないタッチパネルなどの入力部との間のデータ伝送を仲介する。すなわち、入力インターフェイス１０４は、ユーザが入力部を操作することで与えられる操作指令などの外部からの入力を受付ける。
【００２６】
表示コントローラ１０５は、表示部の典型例であるディスプレイ１１０と接続され、ディスプレイ１１０での表示を制御する。すなわち、表示コントローラ１０５は、ＣＰＵ１０１による画像処理の結果などをユーザに対して表示する。ディスプレイ１１０は、たとえばＬＣＤ（Liquid Crystal Display）またはＣＲＴ（Cathode Ray Tube）である。
【００２７】
データリーダ／ライタ１０６は、ＣＰＵ１０１と記録媒体１１１の間のデータ伝送を仲介する。すなわち、記録媒体１１１は、情報処理装置２０１で実行されるプログラムなどが格納された状態で流通し、データリーダ／ライタ１０６は、この記録媒体１１１からプログラムを読み出す。また、データリーダ／ライタ１０６は、ＣＰＵ１０１の内部指令に応答して、情報処理装置２０１における処理結果などを記録媒体１１１へ書き込む。なお、記録媒体１１１は、たとえば、ＣＦ（Compact Flash）およびＳＤ（Secure Digital）などの汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）などの磁気記憶媒体、またはＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記憶媒体である。
【００２８】
通信インターフェイス１０７は、ＣＰＵ１０１とパーソナルコンピュータおよびサーバ装置などの間のデータ伝送を仲介する。通信インターフェイス１０７は、典型的には、イーサネット（登録商標）またはＵＳＢ（Universal Serial Bus）の通信機能を有する。なお、記録媒体１１１に格納されたプログラムを情報処理装置２０１にインストールする形態に代えて、通信インターフェイス１０７を介して配信サーバなどからダウンロードしたプログラムを情報処理装置２０１にインストールしてもよい。
【００２９】
また、情報処理装置２０１には、必要に応じてプリンタなどの他の出力装置が接続されてもよい。
【００３０】
［制御構造］
次に、情報処理装置２０１における設定ファイル生成機能を提供するための制御構造について説明する。
【００３１】
図２は、本発明の実施の形態に係る情報処理装置が提供する制御構造を示すブロック図である。図２に示す各ブロックは、ハードディスク１０３に格納されたプログラム（コード）などをメインメモリ１０２に展開して、ＣＰＵ１０１に実行させることで提供される。なお、図２に示す制御構造の一部もしくは全部を専用ハードウェアおよび／または配線回路によって実現してもよい。
【００３２】
図２を参照して、情報処理装置２０１は、その制御構造として、データアクセスクラス抽出部５１と、ＳＱＬ−ＩＤ抽出部（第１のアクセス命令抽出部）５２と、ＳＱＬ−ＩＤ抽出部（第２のアクセス命令抽出部）５３と、業務バッチ／ＸＭＬマッピング部５４と、Ｏ／Ｒマッピング設定ファイル生成部５５とを備える。
【００３３】
業務バッチアプリケーションクラス６１と、データアクセスクラス６２と、業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３と、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル（ＸＭＬ定義ファイル）６４と、ＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５と、業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６と、Ｏ／Ｒマッピング設定ファイル６７とは、たとえば図１に示すメインメモリ１０２またはハードディスク１０３に保存される。
【００３４】
本発明の実施の形態に係る情報処理装置では、たとえば、アクセス命令はＳＱＬによって記述され、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４はＸＭＬ（Extensible Markup Language）によって記述され、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４はＯ／Ｒマッピング用の設定ファイルである。
【００３５】
ＣＰＵ１０１は、図２に示す各部の他に、多くのユニットによって構成されるのが一般的であるが、説明を簡単にするために、本発明に関係しないユニットについては図示していない。
【００３６】
情報処理装置２０１は、たとえば、Ｊａｖａ（登録商標）のＯ／Ｒマッピングにおいて、Ｏ／Ｒマッピング設定ファイルを自動生成する。本発明の実施の形態に係る設定ファイル生成プログラムは、たとえば、ＪａｖａのＯ／Ｒマッピングのフレームワーク上で動作が可能である。
【００３７】
ここで、アプリケーションプログラムは、予め決められた命名規則に基づき、業務バッチアプリケーションクラスを特定できるように作成される。たとえば、以下のような規則である。すなわち、業務アプリケーションから呼び出すデータアクセスクラスの命名をルール化しておき、また、データアクセスクラスでは同一構文によりＳＱＬ文のＩＤを指定するようにしておく。また、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルでは、所定の構文によりＳＱＬ文にＩＤが付与される。
【００３８】
情報処理装置２０１では、上記の規則を利用して、業務バッチアプリケーションクラスとｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル（ＸＭＬ定義ファイル）との対応関係を導出する。そして、使用するｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを指定するためのＯ／Ｒマッピング設定ファイルを自動生成する。
【００３９】
図３は、本発明の実施の形態に係る情報処理装置において生成される業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表の一例を示す図である。図４は、本発明の実施の形態に係る情報処理装置において生成されるＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表の一例を示す図である。図５は、本発明の実施の形態に係る情報処理装置において生成される業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表の一例を示す図である。
【００４０】
データアクセスクラス抽出部５１は、アプリケーションのプログラミングコードに含まれる業務バッチアプリケーションクラス６１を読み込み、解析すべきデータアクセスクラスを抽出する。
【００４１】
ＳＱＬ−ＩＤ抽出部５２は、抽出されたデータアクセスクラスを読み込んでＳＱＬ−ＩＤを抽出し、図３に示す業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３を作成する。
【００４２】
ＳＱＬ−ＩＤ抽出部５３は、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を読み込んでＳＱＬ−ＩＤを抽出し、図４に示すＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５を作成する。
【００４３】
業務バッチ／ＸＭＬマッピング部５４は、ＳＱＬ−ＩＤ抽出部５２から受けた業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３およびＳＱＬ−ＩＤ抽出部５３から受けたＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５を、図５に示す業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６に変換する。
【００４４】
Ｏ／Ｒマッピング設定ファイル生成部５５は、業務バッチ／ＸＭＬマッピング部５４から受けた業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６に基づいて、Ｏ／Ｒマッピング設定ファイル６７を生成する。
【００４５】
本発明の実施の形態に係る情報処理装置では、たとえば、アクセス命令はＳＱＬによって記述され、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４はＸＭＬ（Extensible Markup Language）によって記述され、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４はＯ／Ｒマッピング用の設定ファイルである。
【００４６】
［動作］
次に、本発明の実施の形態に係る情報処理装置の動作について図面を用いて説明する。本発明の実施の形態では、情報処理装置２０１を動作させることによって、本発明の実施の形態に係るＯ／Ｒマッピング設定ファイル生成方法が実施される。よって、本発明の実施の形態に係るＯ／Ｒマッピング設定ファイル生成方法の説明は、以下の情報処理装置２０１の動作説明に代える。なお、以下の説明においては、適宜図２を参照する。
【００４７】
図６は、本発明の実施の形態に係る情報処理装置がＯ／Ｒマッピング設定ファイル生成処理を行なう際の動作手順を示すフローチャートである。
【００４８】
図６を参照して、まず、データアクセスクラス抽出部５１は、アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出する（ステップＳ２）。
【００４９】
次に、ＳＱＬ−ＩＤ抽出部５２は、データアクセスクラス抽出部５１によって抽出されたデータアクセスクラスから、ＳＱＬによって記述されたアクセス命令としてＳＱＬ−ＩＤを抽出する（ステップＳ４）。
【００５０】
次に、ＳＱＬ−ＩＤ抽出部５２は、アプリケーションクラスと抽出したアクセス命令との対応関係を示す業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３を生成する（ステップＳ６）。
【００５１】
次に、ＳＱＬ−ＩＤ抽出部５３は、ＳＱＬによって記述されたアクセス命令が定義された複数のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４からそれぞれアクセス命令を抽出する（ステップＳ８）。なお、各ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４において定義されるアクセス命令は、ファイル間で互いに異なっていてもよいし、一部が重複していてもよい。
【００５２】
次に、ＳＱＬ−ＩＤ抽出部５３は、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４とアクセス命令との対応関係を示すＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５を生成する（ステップＳ１０）。
【００５３】
次に、業務バッチ／ＸＭＬマッピング部５４は、業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３およびＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５に基づいてアプリケーションクラスとｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４との対応関係を示す業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６を生成する（ステップＳ１２）。
【００５４】
次に、Ｏ／Ｒマッピング設定ファイル生成部５５は、ＳＱＬ−ＩＤ抽出部５２によって抽出されたアクセス命令とＳＱＬ−ＩＤ抽出部５３によって抽出されたアクセス命令とに基づいて、すなわち業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６に基づいて、複数のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４の中から、アプリケーションが使用するアクセス命令が定義されたｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を選択する。そして、Ｏ／Ｒマッピング設定ファイル生成部５５は、選択したｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を示すＯ／Ｒマッピング設定ファイル６７を生成する（ステップＳ１４）。
【００５５】
次に、本発明の実施の形態に係る情報処理装置が設定ファイル生成処理を行なう際の動作の具体例を説明する。
【００５６】
図７は、本発明の実施の形態に係る情報処理装置における業務バッチアプリケーションクラスの具体例を示す図である。
【００５７】
図８は、本発明の実施の形態に係る情報処理装置におけるデータアクセスクラス抽出部のオートマトンの一例を示す図である。図８は、「ｃｏｍｍｏｎＣｏｎｔｒｏｌｌｅｒ．ｇｅｔＤａｏ（」というコードからＤＡＯクラス名を取得するオートマトンを示している。
【００５８】
ここで、業務バッチアプリケーションクラス６１は、「ＸＸＸＸＸＡｇｅｎｔ．ｊａｖａ」の命名規則で表わされるクラスであるとする。また、業務バッチアプリケーションクラス６１の構文ルールは、以下のようになる。すなわち、図７に示す業務バッチアプリケーションクラス６１において、「ｃｏｍｍｏｎＣｏｎｔｒｏｌｌｅｒ．ｇｅｔＤａｏ（」というコードの次に、ＤＡＯクラス名が記述される。
【００５９】
図７および図８を参照して、データアクセスクラス抽出部５１は、図７に示すような業務バッチアプリケーションクラスを読み込み、データアクセスクラス６２を抽出する。ここで、図８に示されるオートマトンが「ｃｏｍｍｏｎＣｏｎｔｒｏｌｌｅｒ」の構文に反応し、ＤＡＯ（Data Access Object）クラス名から該当するデータアクセスクラス６２を抽出する。
【００６０】
図９は、本発明の実施の形態に係る情報処理装置におけるデータアクセスクラスの具体例を示す図である。
【００６１】
図１０は、本発明の実施の形態に係る情報処理装置におけるＳＱＬ−ＩＤ抽出部５２のオートマトンの一例を示す図である。図１０は、ＤＡＯクラスからＳＱＬ文のＩＤを取得するオートマトンを示している。
【００６２】
図９および図１０を参照して、ＳＱＬ−ＩＤ抽出部５２は、図９に示すようなデータアクセスクラス６２を読み込み、図１０に示すようなオートマトンによりＤＡＯクラスの構文ルールに従ってＳＱＬ文のＩＤを抽出し、業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３を作成する。
【００６３】
ここで、ＤＡＯクラスの構文ルールは、以下のようになる。すなわち、データアクセスクラス６２では、「ｓｑｌＭａｐ．ｉＢＡＴＩＳ命令文（」というコードの次に、ＳＱＬ文のＩＤが記述される。
【００６４】
図１１は、本発明の実施の形態に係る情報処理装置におけるＸＭＬ定義ファイルの具体例を示す図である。
【００６５】
図１２は、本発明の実施の形態に係る情報処理装置におけるＳＱＬ−ＩＤ抽出部５３のオートマトンの一例を示す図である。図１２は、ＸＭＬ定義ファイルからＳＱＬ文のＩＤを取得するオートマトンを示している。
【００６６】
図１１および図１２を参照して、ＳＱＬ−ＩＤ抽出部５３は、図１１に示されるようなＸＭＬ定義ファイルすなわちｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を読み込み、図１２に示すようなオートマトンによりＸＭＬ定義ファイルの構文ルールに従ってＳＱＬ文のＩＤを抽出し、ＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５を作成する。
【００６７】
ここで、ＸＭＬ定義ファイルの構文ルールは、以下のようになる。すなわち、ＸＭＬ定義ファイルでは、「＜ｓｑｌの命令文ｉｄ＝」というコードの次に、ＳＱＬ文のＩＤが記述される。
【００６８】
次に、業務バッチ／ＸＭＬマッピング部５４は、業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３およびＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５に基づいて、業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６を生成する。
【００６９】
図１３は、本発明の実施の形態に係る情報処理装置が生成する設定ファイルの具体例を示す図である。
【００７０】
図１３を参照して、次に、Ｏ／Ｒマッピング設定ファイル生成部５５は、業務バッチ／ＸＭＬマッピング部５４から受けた業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６に基づいて、Ｏ／Ｒマッピング設定ファイル６７を選択する、すなわちｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４のうち、アプリケーションで使用するアクセス命令が定義されたｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を示す設定ファイルを生成する。
【００７１】
ところで、従来のＯ／Ｒマッピング設定ファイルでは、アプリケーションが使用しないｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルもすべて指定するようにしていたため、メモリ量を無駄に使用してしまう。また、最終的に出来上がったアプリケーションの機能に応じて必要なｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを特定することができないことから、人手によって必要なｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを指定せざるを得ないため、生産効率が低い。
【００７２】
これに対して、本発明の実施の形態に係る情報処理装置では、データアクセスクラス抽出部５１は、アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出する。ＳＱＬ−ＩＤ抽出部５２は、データアクセスクラス抽出部５１によって抽出されたデータアクセスクラスから、ＳＱＬによって記述されたアクセス命令を抽出する。ＳＱＬ−ＩＤ抽出部５３は、ＳＱＬによって記述されたアクセス命令が定義された複数のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４からそれぞれアクセス命令を抽出する。そして、Ｏ／Ｒマッピング設定ファイル生成部５５は、ＳＱＬ−ＩＤ抽出部５２によって抽出されたアクセス命令とＳＱＬ−ＩＤ抽出部５３によって抽出されたアクセス命令とに基づいて、複数のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４の中から、アプリケーションが使用するアクセス命令が定義されたｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を選択し、選択したｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を示すＯ／Ｒマッピング設定ファイル６７を生成する。
【００７３】
このような構成により、アプリケーションが使用するｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイルを過不足なくＯ／Ｒマッピング設定ファイルにおいて指定することができる。
【００７４】
すなわち、本発明の実施の形態に係る情報処理装置２０１における各構成要素のうち、データアクセスクラス抽出部５１、ＳＱＬ−ＩＤ抽出部５２、ＳＱＬ−ＩＤ抽出部５３およびＯ／Ｒマッピング設定ファイル生成部５５からなる最小構成により、アプリケーションがデータベースにアクセスする際に使用する設定ファイルを生成することにより、装置の記憶容量を効率的に使用し、かつ生産効率を向上させるという本発明の目的を達成することが可能となる。
【００７５】
また、本発明の実施の形態に係る情報処理装置では、ＳＱＬ−ＩＤ抽出部５２は、アプリケーションクラスと抽出したアクセス命令との対応関係を示す業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表（第１の対応情報）６３を生成する。ＳＱＬ−ＩＤ抽出部５３は、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４と抽出したアクセス命令との対応関係を示すＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表（第２の対応情報）６５を生成する。業務バッチ／ＸＭＬマッピング部５４は、業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表６３およびＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表６５に基づいてアプリケーションクラスとｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４との対応関係を示す業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表（第３の対応情報）６６を生成する。そして、Ｏ／Ｒマッピング設定ファイル生成部５５は、業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表６６に基づいて、複数のｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４の中から、アプリケーションが使用するアクセス命令が定義されたｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を選択し、選択したｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４を示すＯ／Ｒマッピング設定ファイル６７を生成する。
【００７６】
このような構成により、Ｏ／Ｒマッピング設定ファイル６７を効率的に生成することができる。
【００７７】
また、本発明の実施の形態に係る情報処理装置では、アクセス命令はＳＱＬによって記述され、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４はＸＭＬによって記述され、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４はＯ／Ｒマッピング用の設定ファイルである。このような構成により、特に、オブジェクト指向プログラミング言語で作成されたアプリケーション作成において、装置の記憶容量を効率的に使用し、かつ生産効率を向上させることが可能となる。ただし、本発明の範囲はこの具体例に限定されるものではなく、アクセス命令がＳＱＬ以外の他の言語で記述されていてもよいし、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４がＸＭＬ以外の他の言語で記述されていてもよいし、ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル６４がＯ／Ｒマッピング以外の用途に用いる設定ファイルであってもよい。
【００７８】
上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【００７９】
本発明によれば、アプリケーションがデータベースにアクセスする際に使用する設定ファイルを生成することにより、装置の記憶容量を効率的に使用し、かつ生産効率を向上させることができる。
【００８０】
したがって、本発明は、たとえば、「Ｔｏｒｑｕｅ」（登録商標）の実行環境設定ファイル、および「Ｈｉｂｅｒｎａｔｅ」（登録商標）のマッピング定義ファイルを作成する用途に適応可能であるため、産業上の利用可能性を有している。
【００８１】
上記実施の形態の一部または全部は以下の付記のようにも記載されうるが、本発明の範囲は、以下の付記に限定されるものではない。
【００８２】
［付記１］
アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するためのデータアクセスクラス抽出部と、
抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するための第１のアクセス命令抽出部と、
前記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ前記アクセス命令を抽出するための第２のアクセス命令抽出部と、
前記第１のアクセス命令抽出部によって抽出された前記アクセス命令と前記第２のアクセス命令抽出部によって抽出された前記アクセス命令とに基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成するための設定ファイル生成部とを備える、情報処理装置。
【００８３】
［付記２］
前記第１のアクセス命令抽出部は、前記アプリケーションクラスと前記データアクセスクラスから抽出した前記アクセス命令との対応関係を示す第１の対応情報を生成し、
前記第２のアクセス命令抽出部は、前記定義ファイルと前記定義ファイルから抽出した前記アクセス命令との対応関係を示す第２の対応情報を生成し、
前記情報処理装置は、さらに、
前記第１の対応情報および前記第２の対応情報に基づいて前記アプリケーションクラスと前記定義ファイルとの対応関係を示す第３の対応情報を生成するためのマッピング部を備え、
前記設定ファイル生成部は、前記第３の対応情報に基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成する、付記１に記載の情報処理装置。
【００８４】
［付記３］
前記アクセス命令はＳＱＬ（Structured Query Language）によって記述され、前記定義ファイルはＸＭＬ（Extensible Markup Language）によって記述され、前記定義ファイルはＯ／Ｒマッピング（Object/Relational Mapping）用の定義ファイルである、付記１または２に記載の情報処理装置。
【００８５】
［付記４］
アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するステップと、
抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するステップと、
前記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ前記アクセス命令を抽出するステップと、
前記データアクセスクラスから抽出された前記アクセス命令と前記定義ファイルから抽出された前記アクセス命令とに基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成するステップとを含む、設定ファイル生成方法。
【００８６】
［付記５］
前記データアクセスクラスから前記アクセス命令を抽出するステップにおいては、前記アプリケーションクラスと前記データアクセスクラスから抽出した前記アクセス命令との対応関係を示す第１の対応情報を生成し、
前記定義ファイルから前記アクセス命令を抽出するステップにおいては、前記定義ファイルと前記定義ファイルから抽出した前記アクセス命令との対応関係を示す第２の対応情報を生成し、
前記設定ファイル生成方法は、さらに、
前記第１の対応情報および前記第２の対応情報に基づいて前記アプリケーションクラスと前記定義ファイルとの対応関係を示す第３の対応情報を生成するステップを含み、
前記設定ファイルを生成するステップにおいては、前記第３の対応情報に基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成する、付記４に記載の設定ファイル生成方法。
【００８７】
［付記６］
前記アクセス命令はＳＱＬによって記述され、前記定義ファイルはＸＭＬによって記述され、前記定義ファイルはＯ／Ｒマッピング用の定義ファイルである、付記４または５に記載の設定ファイル生成方法。
【００８８】
［付記７］
コンピュータに、
アプリケーションのプログラムコードに含まれるアプリケーションクラスからデータアクセスクラスを抽出するステップと、
抽出されたデータアクセスクラスから、所定の言語によって記述されたアクセス命令を抽出するステップと、
前記所定の言語によって記述されたアクセス命令が定義された複数の定義ファイルからそれぞれ前記アクセス命令を抽出するステップと、
前記データアクセスクラスから抽出された前記アクセス命令と前記定義ファイルから抽出された前記アクセス命令とに基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成するステップとを実行させる、設定ファイル生成プログラム。
【００８９】
［付記８］
前記データアクセスクラスから前記アクセス命令を抽出するステップにおいては、前記アプリケーションクラスと前記データアクセスクラスから抽出した前記アクセス命令との対応関係を示す第１の対応情報を生成し、
前記定義ファイルから前記アクセス命令を抽出するステップにおいては、前記定義ファイルと前記定義ファイルから抽出した前記アクセス命令との対応関係を示す第２の対応情報を生成し、
前記設定ファイル生成プログラムは、さらに、コンピュータに、
前記第１の対応情報および前記第２の対応情報に基づいて前記アプリケーションクラスと前記定義ファイルとの対応関係を示す第３の対応情報を生成するステップを実行させ、
前記設定ファイルを生成するステップにおいては、前記第３の対応情報に基づいて、前記複数の定義ファイルの中から、前記アプリケーションが使用する前記アクセス命令が定義された前記定義ファイルを選択し、選択した前記定義ファイルを示す設定ファイルを生成する、付記７に記載の設定ファイル生成プログラム。
【００９０】
［付記９］
前記アクセス命令はＳＱＬによって記述され、前記定義ファイルはＸＭＬによって記述され、前記定義ファイルはＯ／Ｒマッピング用の定義ファイルである、付記７または８に記載の設定ファイル生成プログラム。
【符号の説明】
【００９１】
５１  データアクセスクラス抽出部
５２  ＳＱＬ−ＩＤ抽出部（第１のアクセス命令抽出部）
５３  ＳＱＬ−ＩＤ抽出部（第２のアクセス命令抽出部）
５４  業務バッチ／ＸＭＬマッピング部
５５  Ｏ／Ｒマッピング設定ファイル生成部
６１  業務バッチアプリケーションクラス
６２  データアクセスクラス
６３  業務バッチアプリケーションクラス／ＳＱＬ−ＩＤ対応表
６４  ｓｑｌ−ｍａｐ−ｃｏｎｆｉｇファイル（ＸＭＬ定義ファイル）
６５  ＳＱＬ−ＩＤ／ＸＭＬ定義ファイル対応表
６６  業務バッチアプリケーションクラス／ＸＭＬ定義ファイル対応表
６７  Ｏ／Ｒマッピング設定ファイル
１０１  ＣＰＵ
１０２  メインメモリ
１０３  ハードディスク
１０４  入力インターフェイス
１０５  表示コントローラ
１０６  データリーダ／ライタ
１０７  通信インターフェイス
１０８  キーボード
１０９  マウス
１１０  ディスプレイ
１１１  記録媒体
２０１  情報処理装置
【図１】
2011248631.tif 000003
【図２】
2011248631.tif 000004
【図３】
2011248631.tif 000005
【図４】
2011248631.tif 000006
【図５】
2011248631.tif 000007
【図６】
2011248631.tif 000008
【図７】
2011248631.tif 000009
【図８】
2011248631.tif 000010
【図９】
2011248631.tif 000011
【図１０】
2011248631.tif 000012
【図１１】
2011248631.tif 000013
【図１２】
2011248631.tif 000014
【図１３】
2011248631.tif 000015