(57)【要約】【課題】  大量の検索データを処理する場合であっても、ネットワーク負荷やデータアクセス負荷が原因となる性能の低下を起こさないようにすると共に、高いメンテナンス性を確保できるようにする。【解決手段】  ＷＥＢ／ＡＰサーバ２００の各業務アプリケーション２２０は、検索要求により検索結果の一覧を表示させるための処理を実行する機能を備え、検索結果一覧表示フレームワーク２１０は、それら各業務アプリケーション２２０で共通に使用可能な部分をフレームワーク部として独立に構成される。クライアント端末１００からの検索要求時、データ件数取得部２２２は、要求された検索にヒットする検索データ件数を取得する。データ取得部２２３は、ＤＢサーバ３００に対しデータ取得のＳＱＬを発行し、検索結果データをＭＡＸメモリ保持件数５０２分取得する。取得した検索結果データはメモリ保持データ５１０として保持する。【選択図】  図１
2005063240.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されたクライアント端末と、データベースと、前記クライアント端末からの検索要求により前記データベースに格納されたデータを検索する検索サーバと、を備えた階層型データベース検索システムであって、
前記検索サーバは、
前記検索要求による検索結果を一覧表示させるための各種機能を実行するアプリケーション部を複数備えると共に、
前記複数のアプリケーション部で共通に使用可能なフレームワーク部を前記アプリケーション部に対して独立させて備えたことを特徴とする階層型データベース検索システム。
【請求項２】
前記フレームワーク部は、前記クライアント端末からの要求に応じて次の動作を決定する要求振り分け部を備えたことを特徴とする請求項１記載の階層型データベース検索システム。
【請求項３】
前記アプリケーション部は、前記検索要求による検索結果を一覧表示させるための機能を実行する機能実行部分を複数備え、
前記フレームワーク部は、前記要求振り分け部での決定により前記アプリケーション部における各機能実行部分を呼び出す呼出部を該機能実行部分毎に備えたことを特徴とする請求項２記載の階層型データベース検索システム。
【請求項４】
前記アプリケーション部は、前記機能実行部分として、データ件数取得部と、データ取得部とを備え、
前記検索要求時には、前記データ件数取得部が当該検索にヒットするデータ件数を前記データベースから取得した後、予め定められた最大保持件数を上限として当該検索にヒットしたデータを前記データ取得部が前記データベースから受信することを特徴とする請求項１から３の何れか１項に記載の階層型データベース検索システム。
【請求項５】
前記フレームワーク部は、前記データ件数取得部が取得した検索にヒットするデータ件数が予め定められた最大検索件数よりも大きい場合、該検索がエラーである旨を前記クライアント端末に通知することを特徴とする請求項４記載の階層型データベース検索システム。
【請求項６】
前記アプリケーション部は、
前記クライアント端末から検索一覧を表示するページを切り替えるページ切替要求が発せられると、切り替えるページで表示させる検索結果データが前記検索サーバに保持されているか否かをチェックするデータチェック部を、前記機能実行部分として備えたことを特徴とする請求項１から５の何れか１項に記載の階層型データベース検索システム。
【請求項７】
前記アプリケーション部は、前記機能実行部分として、前記最大保持件数と前記最大検索件数とを設定する件数設定部を備えたことを特徴とする請求項５または６記載の階層型データベース検索システム。
【請求項８】
ネットワークを介して接続されたクライアント端末と、データベースと、前記クライアント端末からの検索要求により前記データベースに格納されたデータを検索する検索サーバと、を備えたシステムにおける階層型データベース検索方法であって、
前記クライアント端末からの検索要求時には、前記検索サーバが当該検索にヒットするデータ件数を前記データベースから取得した後、予め定められた最大保持件数を上限として当該検索にヒットした検索結果データを前記検索サーバが前記データベースから取得することを特徴とする階層型データベース検索方法。
【請求項９】
前記クライアント端末からの検索要求時に前記検索サーバが前記データベースから取得した当該検索にヒットするデータ件数が予め定められた最大検索件数よりも大きい場合、該検索がエラーである旨を前記検索サーバが前記クライアント端末に通知することを特徴とする請求項８記載の階層型データベース検索方法。
【請求項１０】
前記クライアント端末から検索一覧を表示するページを切り替えるページ切替要求が発せられると、前記検索サーバは、切り替えるページで表示させる検索結果データが当該検索サーバに保持されているか否かをチェックし、保持されている場合は該保持された検索結果データを前記クライアント端末に送信し、保持されていない場合、前記データベースを再度検索してから検索結果データを前記クライアント端末に送信することを特徴とする請求項８または９記載の階層型データベース検索方法。
【請求項１１】
前記検索サーバは、前記検索要求による検索結果を一覧表示させるための各種機能を実行するアプリケーション部を複数備えると共に、
前記複数のアプリケーション部で共通に使用可能なフレームワーク部を前記アプリケーション部に対して独立させて備えたことを特徴とする請求項８から１０の何れか１項に記載の階層型データベース検索方法。
【請求項１２】
ネットワークを介して接続されたクライアント端末と、データベースと、前記クライアント端末からの検索要求により前記データベースに格納されたデータを検索する検索サーバと、を備えた階層型データベース検索システムのプログラムであって、
前記クライアント端末からの検索要求時には、前記検索サーバに、
当該検索にヒットするデータ件数を前記データベースから取得する件数取得処理を実行させた後、予め定められた最大保持件数を上限として当該検索にヒットした検索結果データを前記データベースから取得する検索結果取得処理を実行させることを特徴とする階層型データベース検索システムのプログラム。
【請求項１３】
前記件数取得処理で取得したデータ件数が予め定められた最大検索件数よりも大きい場合、前記検索サーバに、検索がエラーである旨を前記クライアント端末に通知するエラー通知処理を実行させることを特徴とする請求項１２記載の階層型データベース検索システムのプログラム。
【請求項１４】
前記クライアント端末から検索一覧を表示するページを切り替えるページ切替要求が発せられると、前記検索サーバに、
切り替えるページで表示させる検索結果データが当該検索サーバに保持されているか否かをチェックするデータチェック処理を実行させ、
保持されている場合は該保持された検索結果データを前記クライアント端末に送信する処理を実行させ、
保持されていない場合、前記データベースを再度検索してから検索結果データを前記クライアント端末に送信する処理を実行させることを特徴とする請求項１２または１３記載の階層型データベース検索システムのプログラム。
【請求項１５】
前記検索サーバは、前記検索要求による検索結果を一覧表示させるための各種機能を実行するアプリケーション部を複数備えると共に、
前記複数のアプリケーション部で共通に使用可能なフレームワーク部を前記アプリケーション部に対して独立させて備えたことを特徴とする請求項１２から１４の何れか１項に記載の階層型データベース検索システムのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介してクライアント端末に検索サービスを提供する階層型データベース検索システム、方法、および該システムのプログラムに関する。
【背景技術】
【０００２】
従来より、ネットワークを介して接続されたクライアント端末と、ＷＥＢ／ＡＰ（Application ）サーバ（検索サーバ）と、ＤＢ（データベース）サーバとの３層構成により、クライアント端末に対して検索サービスなどを提供する階層型データベース検索システムがある。
【０００３】
こうした検索システムとして、特許文献１のデータベース連携Ｗｅｂページ構築システムは、ＷＷＷサーバとＤＢサーバを備えたサーバマシン及びＷｅｂブラウザを備えたクライアントマシンによってなり、クライアントマシンが検索対象の設定ファイルを生成し、サーバマシンのＨＴＭＬ生成手段が設定ファイルを読み込んでデータベース検索ページのＨＴＭＬファイルを生成し、クライアントマシンで表示されたデータベース検索ページによりデータベースの絞り込み検索・一覧表示・登録等を行うようにし、簡単なシステム構成を有して運用コストの低減を図るものである。
【特許文献１】特開２００２−１４８６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来の階層型データベース検索システムや特許文献１のものでは、検索結果の一覧表示をするアプリケーションを構築する際、大量の検索データ処理によるネットワーク負荷、データアクセス負荷が原因となる性能の低下が発生してしまっていた。
また、例えば商品検索やユーザ検索など複数の業務アプリケーションを備える場合、それら複数の業務アプリケーションに類似した検索処理が存在することとなり、例えばバグの修正や仕様変更などの際にも、メンテナンス性が低くなってしまっていた。
【０００５】
本発明はこのような状況に鑑みてなされたものであり、大量の検索データを処理する場合であっても、ネットワーク負荷やデータアクセス負荷が原因となる性能の低下をほとんど引き起こすことのない階層型データベース検索システム、方法、および該システムのプログラムを提供することを目的とする。
【０００６】
また、他に目的とすることは、複数の業務アプリケーションを備える場合であっても、高いメンテナンス性を確保することができる階層型データベース検索システム、方法、および該システムのプログラムを提供することである。
【課題を解決するための手段】
【０００７】
かかる目的を達成するために、本発明の第１の態様としての階層型データベース検索システムは以下の特徴を有する。
ネットワークを介して接続されたクライアント端末と、データベースと、クライアント端末からの検索要求によりデータベースに格納されたデータを検索する検索サーバと、を備えた階層型データベース検索システムであって、検索サーバは、検索要求による検索結果を一覧表示させるための各種機能を実行するアプリケーション部を複数備えると共に、複数のアプリケーション部で共通に使用可能なフレームワーク部をアプリケーション部に対して独立させて備えたことを特徴とする。
【０００８】
上記したフレームワーク部は、クライアント端末からの要求に応じて次の動作を決定する要求振り分け部を備えることが好ましい。
【０００９】
上記したアプリケーション部は、検索要求による検索結果を一覧表示させるための機能を実行する機能実行部分を複数備え、上記したフレームワーク部は、要求振り分け部での決定によりアプリケーション部における各機能実行部分を呼び出す呼出部を該機能実行部分毎に備えることが好ましい。
【００１０】
上記したアプリケーション部は、機能実行部分として、データ件数取得部と、データ取得部とを備え、検索要求時には、データ件数取得部が当該検索にヒットするデータ件数をデータベースから取得した後、予め定められた最大保持件数を上限として当該検索にヒットしたデータをデータ取得部がデータベースから受信することが好ましい。
【００１１】
上記したフレームワーク部は、データ件数取得部が取得した検索にヒットするデータ件数が予め定められた最大検索件数よりも大きい場合、該検索がエラーである旨をクライアント端末に通知することが好ましい。
【００１２】
上記したアプリケーション部は、クライアント端末から検索一覧を表示するページを切り替えるページ切替要求が発せられると、切り替えるページで表示させる検索結果データが検索サーバに保持されているか否かをチェックするデータチェック部を、機能実行部分として備えることが好ましい。
【００１３】
上記したアプリケーション部は、機能実行部分として、最大保持件数と最大検索件数とを設定する件数設定部を備えることが好ましい。
【００１４】
また、本発明の第２の態様としての階層型データベース検索方法は、以下の特徴を有する。
ネットワークを介して接続されたクライアント端末と、データベースと、クライアント端末からの検索要求によりデータベースに格納されたデータを検索する検索サーバと、を備えたシステムにおける階層型データベース検索方法であって、クライアント端末からの検索要求時には、検索サーバが当該検索にヒットするデータ件数をデータベースから取得した後、予め定められた最大保持件数を上限として当該検索にヒットした検索結果データを検索サーバがデータベースから取得することを特徴とする。
【００１５】
上記したクライアント端末からの検索要求時に検索サーバがデータベースから取得した当該検索にヒットするデータ件数が予め定められた最大検索件数よりも大きい場合、該検索がエラーである旨を検索サーバがクライアント端末に通知することが好ましい。
【００１６】
上記したクライアント端末から検索一覧を表示するページを切り替えるページ切替要求が発せられると、検索サーバは、切り替えるページで表示させる検索結果データが当該検索サーバに保持されているか否かをチェックし、保持されている場合は該保持された検索結果データをクライアント端末に送信し、保持されていない場合、データベースを再度検索してから検索結果データをクライアント端末に送信することが好ましい。
【００１７】
上記した検索サーバは、検索要求による検索結果を一覧表示させるための各種機能を実行するアプリケーション部を複数備えると共に、複数のアプリケーション部で共通に使用可能なフレームワーク部をアプリケーション部に対して独立させて備えることが好ましい。
【００１８】
また、本発明の第３の態様としての階層型データベース検索システムのプログラムは、以下の特徴を有する。
ネットワークを介して接続されたクライアント端末と、データベースと、クライアント端末からの検索要求によりデータベースに格納されたデータを検索する検索サーバと、を備えた階層型データベース検索システムのプログラムであって、クライアント端末からの検索要求時には、検索サーバに、当該検索にヒットするデータ件数をデータベースから取得する件数取得処理を実行させた後、予め定められた最大保持件数を上限として当該検索にヒットした検索結果データをデータベースから取得する検索結果取得処理を実行させることを特徴とする。
【００１９】
上記した件数取得処理で取得したデータ件数が予め定められた最大検索件数よりも大きい場合、検索サーバに、検索がエラーである旨をクライアント端末に通知するエラー通知処理を実行させることが好ましい。
【００２０】
上記したクライアント端末から検索一覧を表示するページを切り替えるページ切替要求が発せられると、検索サーバに、切り替えるページで表示させる検索結果データが当該検索サーバに保持されているか否かをチェックするデータチェック処理を実行させ、保持されている場合は該保持された検索結果データをクライアント端末に送信する処理を実行させ、保持されていない場合、データベースを再度検索してから検索結果データをクライアント端末に送信する処理を実行させることが好ましい。
【００２１】
上記した検索サーバは、検索要求による検索結果を一覧表示させるための各種機能を実行するアプリケーション部を複数備えると共に、複数のアプリケーション部で共通に使用可能なフレームワーク部をアプリケーション部に対して独立させて備えることが好ましい。
【発明の効果】
【００２２】
以上のように、本発明によれば、複数のアプリケーション部で共通に使用可能なフレームワーク部をアプリケーション部に対して独立させて備えているため、複数のアプリケーション部を備える場合であっても類似した検索処理を多く存在させないようにすることができ、高いメンテナンス性を確保することができる。
【００２３】
また、予め定められた最大保持件数を上限として当該検索にヒットした検索結果データを取得するため、大量の検索データや頻繁なデータベースアクセスによるサーバ負荷、ネットワーク負荷を制御することができ、大量の検索データを処理する場合であっても、ネットワーク負荷やデータアクセス負荷が原因となる性能の低下をほとんど引き起こすことのないようにすることができる。
【発明を実施するための最良の形態】
【００２４】
次に、本発明に係る階層型データベース検索システム、方法、およびシステムのプログラムの好適な実施形態を図面を用いて詳細に説明する。
本実施形態としての階層型データベース検索システムは、図１に示すように、クライアント端末１００と、ＷＥＢ／ＡＰサーバ（検索サーバ）２００と、ＤＢ（データベース）サーバ３００とを備えて構成され、それぞれがネットワーク４００を介して通信可能に接続されている。
図１中、実線の矢印は制御の流れを示し、白抜き線の矢印はデータ閲覧の方向を示す。
【００２５】
クライアント端末１００は、例えばＰＣなどのインターネットに接続可能なコンピュータであり、Ｗｅｂブラウザが実装されている。クライアント端末１００を操作するユーザは、このＷｅｂブラウザにより表示される画面によりマウスなどの入力手段（不図示）から、ＷＥＢ／ＡＰサーバ２００に対して一覧検索処理の要求を行う。
【００２６】
ＷＥＢ／ＡＰサーバ２００は、検索結果一覧表示フレームワーク（フレームワーク部）２１０と、業務アプリケーション（アプリケーション部）２２０（２２０ａ，２２０ｂ，・・・）とを備えて構成される。
この両者のプログラムは互いに独立したものであるが、業務アプリケーション２２０それぞれが検索結果一覧表示フレームワーク２１０に対する細部のクラスを定義するよう構成されることによって、全体で１つのアプリケーションのように動作する。
【００２７】
換言すると、各業務アプリケーション２２０（２２０ａ，２２０ｂ，・・・）は、例えば商品検索やユーザ検索などそれぞれの用途に応じて、クライアント端末１００からの検索要求により検索結果の一覧を表示させるための処理を実行する機能を備え、検索結果一覧表示フレームワーク２１０は、それら各業務アプリケーション２２０で共通に使用可能な部分をフレームワーク部として、各業務アプリケーション２２０に対して独立に構成されたものである。
この検索結果一覧表示フレームワーク２１０における共通に使用可能な部分の機能は、例えば検索結果の一覧表示におけるページ移動機能や現在ページ数の表示機能などである。
【００２８】
イベント振り分け部２１１は、クライアント端末１００からのイベントを振り分ける。このイベントとは、クライアント端末１００からのＷＥＢ／ＡＰサーバ２００へ届く要求を表す。
【００２９】
イベント前処理部２２４は、イベント発生時の処理を行う。イベントの処理の前に実行したい処理がある場合には、イベント前処理呼出部２１２が業務アプリケーション２２０内のイベント前処理部２２４を呼び出し、その処理を実行させる。
このイベント発生時に行う処理（イベントの処理の前に実行する処理）とは、例えば、イベントの処理がユーザＩＤとパスワードによりログインしてから行う処理である場合、そのログインにおけるユーザＩＤとパスワードとを照合する処理などである。
【００３０】
データ制御件数設定呼出部２１３は、業務アプリケーション２２０内のデータ制御件数設定部２２１を呼び出し、データ制御件数を変更または保留させ、その結果をデータ制御件数５００に設定する。
【００３１】
データ件数チェック呼出部２１４は、要求された検索にヒットするデータ件数の情報（検索データ件数）をＤＢサーバ３００から取得する業務アプリケーション２２０のデータ件数取得部２２２を呼び出し、検索データ件数を取得させ、取得された検索データ件数をデータ制御件数設定情報５００のＭＡＸ検索件数５０３と比較する。
【００３２】
メモリデータチェック部２１５は、ページ切替要求がクライアント端末１００から発せられた時、要求されたページを表示するために必要な検索結果データがＷＥＢ／ＡＰサーバ２００内に格納されているか否かのチェックを行う。
【００３３】
データ取得呼出部２１６は、ＤＢサーバ３００から検索結果一覧として表示する検索結果データを取得する業務アプリケーション２２０のデータ取得部２２３を呼び出す。
データ取得部２２３は、データ制御件数設定情報５００のＭＡＸメモリ保持件数５０２を上限として、検索結果データをＤＢサーバ３００から取得してＷＥＢ／ＡＰサーバ２００に保持できるようにする。
【００３４】
一覧表示用データ作成呼出部２１７は、データ制御件数設定情報５００の画面表示件数５０１から表示件数を取得し、業務アプリケーション２２０内の一覧表示部分作成部２２６を呼び出し、一覧表示用データを作成させる。
【００３５】
イベント後処理呼出部２１８は、イベント後処理部２２５を呼び出してイベント発生時の最終処理を行う。イベント発生時の最終処理があった場合は、業務アプリケーション２２０の中のイベント後処理部２２５が実行される。
このイベント発生時の最終処理とは、例えばイベントの処理が上述したユーザＩＤとパスワードによりログインしてから行う処理である場合、そのログアウトに関する処理や不要となるデータの消去処理などである。
【００３６】
このように、ＷＥＢ／ＡＰサーバ２００は、各業務アプリケーション２２０がクライアント端末１００からの検索要求による検索結果を一覧表示させるための機能を実行する符号２２１〜２２６の各部（機能実行部分）を備え、検索結果一覧表示フレームワーク２１０が、それら各機能実行部分をイベント振り分け部２１１での決定により呼び出す呼出部を機能実行部分毎に備えた構成となっている。
また、ＷＥＢ／ＡＰサーバ２００は、検索結果を一覧表示させるために必要なデータ制御件数設定情報５００などの情報を記憶部に保持する。
【００３７】
ＤＢサーバ３００は、検索対象となるデータを格納し、Ｗｅｂ／ＡＰサーバ２００からの参照要求に応じて格納されたデータの検索を許可する。
【００３８】
このように、本実施形態としての階層型データベース検索システムは、クライアント端末１００と、ＷＥＢ／ＡＰサーバ２００と、ＤＢサーバ３００とを備えて構成されるＷＥＢシステムでの一覧表示検索結果を、ページという単位であらかじめ指定された件数分表示する機能を汎用化することで、サーバ、ネットワーク資源の効率化を可能とする仕組みを備えると共に、サーバ処理を各業務アプリケーション（データ取得など）と共通部分（検索結果一覧表示フレームワーク２１０）とに分けて独立性を持たせる仕組みを備えた汎用フレームワークの構成となっている。
【００３９】
次に、図２を用いて、本発明による検索件数保持方式の概要について説明する。
本実施形態としての階層型データベース検索システムは、クライアント端末１００と、ＷＥＢ／ＡＰサーバ２００と、ＤＢサーバ３００とは、ネットワーク４００を経由して通信可能に接続されており、それぞれで分散して一覧表示検索結果の表示、保持、制御を行っている。
【００４０】
画面表示件数５０１は、クライアント端末１００のブラウザで、一覧表示件数として１ページに表示する検索結果データ数の上限値を表す。
ＭＡＸメモリ保持件数５０２は、検索結果データのうちＷＥＢ／ＡＰサーバ２００に保持しておくデータ件数の最大値である。
ＭＡＸ検索件数５０３は最大検索件数を意味し、検索結果データがこの件数以上ある場合に結果を返却せずエラーを返すようにする閾値である。
【００４１】
ＤＢサーバ３００に格納されたデータに対して検索を行った結果のヒット件数である実検索結果件数３０１が、データ制御件数設定情報５００のＭＡＸ検索件数５０３以内であれば、その検索結果データのうちＭＡＸメモリ保持件数５０２分を上限としてデータ取得部２２３が取得し、ＷＥＢ／ＡＰサーバ２００が保持する。こうしてＷＥＢ／ＡＰサーバ２００に保持された検索結果データから、画面表示件数５０１分をクライアント端末１００のブラウザが表示する。
ここで、検索のヒット件数である実検索結果件数３０１がデータ制御件数設定情報５００のＭＡＸ検索件数５０３よりも大きい場合、検索はエラーとなり、その旨がクライアント端末１００に通知され、ブラウザに表示される。
【００４２】
クライアント端末１００からページ切替が要求された時、ページ切替時の遷移先で表示する検索結果データがＷＥＢ／ＡＰサーバ２００に保持されている場合はその検索結果データをＷＥＢ／ＡＰサーバ２００がクライアント端末１００に送信し、クライアント端末１００のブラウザが表示する。
ここで、ページ切替時の遷移先で表示する検索結果データがＷＥＢ／ＡＰサーバ２００に保持されていない場合、ＷＥＢ／ＡＰサーバ２００はＤＢサーバ３００に検索しに行き、次のＭＡＸメモリ保持件数５０２分の検索結果データをデータ取得部２２３が取得して保持し、クライアント端末１００に画面表示件数５０１分の検索結果データを送信し、クライアント端末１００のブラウザが表示する。
【００４３】
また、本実施形態としての階層型データベース検索システムでは、データ制御件数設定情報５００のデフォルト値を業務アプリケーション内で変更できることで、例えばデータの変更が頻繁なデータに関してはページ切替のタイミング毎にＤＢサーバ３００から検索結果データを取得し、そうでないものに関してはＷＥＢ／ＡＰサーバ２００内に検索結果データを保持させるといったように、データの種類、検索頻度およびメモリ取得頻度に基づいてデータ取得処理を動的に変更することができる。
【００４４】
次に、本実施形態におけるフレームワークの独立性について説明する。
本実施形態としての階層型データベース検索システムでは、上述した図１に示すように、検索処理における検索結果一覧表示などの共通的な機能を実現する部分を検索結果一覧表示フレームワーク２１０とすると共に、業務に特化した部分を業務アプリケーション２２０としてそれぞれ分けて構成し、フレームワーク部分における各呼出部が業務アプリケーション２２０における対応する部分を呼び出すフレームワーク方式を用いることで、双方に独立性を持たせている。
【００４５】
また、クライアント端末１００、ＷＥＢ／ＡＰサーバ２００、ＤＢサーバ３００、各々でのデータ設定内容を変更するしくみを提供することにより、検索するデータの不要な再検索を避けることができ、ネットワーク負荷を下げて、レスポンスの改善を図ることができる。
【００４６】
次に、検索結果の一覧を表示させる画面イメージとその操作について、図３を用いて説明する。
クライアント端末１００は、検索された結果である検索結果データを画面表示件数５０１毎に分割したページという単位で保持し、表示画面における一覧データ表示エリア５１１に１ページ分表示する。「＜」ボタン５０４、「＞」ボタン５０５はページ切替ボタンである。
【００４７】
全検索結果のうち、現在のページに表示されていない部分を表示するための要求が出され、その要求により表示されるページが切り替えられる動作を本明細書ではページ切替と呼ぶ。例えば、「＜」ボタン５０４でクリックがなされると、クライアント端末１００は現在表示されているひとつ前のページの検索結果データを一覧データ表示エリア５１１に表示し、「＞」ボタン５０５でクリックがなされると、クライアント端末１００は現在表示されているひとつ後ろのページの検索結果データを一覧データ表示エリア５１１に表示する。
また、現在表示ページ数５０８で数字を入力し、ページ切替ボタン５０６で選択された場合には、選択されたページの情報を一覧データ表示エリア５１１に表示する。
【００４８】
ＷＥＢ／ＡＰサーバ２００は、データ制御件数設定情報５００として、検索一覧表示に利用する３つのデータ（画面表示件数５０１、ＭＡＸメモリ保持件数５０２、ＭＡＸ検索件数５０３）を保持している。
また、ＷＥＢ／ＡＰサーバ２００は、ページ切替に必要な情報として、全体ページ数５０７と、現在表示ページ数５０８と、全件数５０９と、メモリ保持データ（レコードリスト）５１０とを保持している。
上述したページ切替機能は、ＷＥＢ／ＡＰサーバ２００が保持するこれらの情報を用いて検索結果一覧表示フレームワーク２１０により実現されるものであり、各業務アプリケーション２２０（２２０ａ，２２０ｂ，２２０ｃ，・・・）で共通に使用される。
【００４９】
次に、本実施形態としての階層型データベース検索システムにおける各イベントに対する動作について、図４、図５、図６を用いて詳細に説明する。
【００５０】
図４は、「初期画面表示」イベント発生時の動作を示すシーケンスである。
クライアント端末１００から「初期画面表示」イベントが発生すると、ＷＥＢ／ＡＰサーバ２００のイベント振り分け部２１１は、そのイベントを受け取る。イベント振り分け部２１１は、イベントの種類により次の動作を決定する。ここではイベント振り分け部２１１は、データ制御件数設定呼出部２１３を呼び出す。
【００５１】
データ制御件数設定呼出部２１３は、業務アプリケーション２２０内のデータ制御件数設定部２２１を実行し、ＷＥＢ／ＡＰサーバ２００内のデータ制御件数設定情報５００を変更する。
その後、イベント振り分け部２１１は、「初期画面表示」画面データを返却し、クライアント端末１００は、画面を表示する。
【００５２】
図５は、「一覧検索」イベント発生時の動作を示すシーケンスである。
クライアント端末１００から「一覧検索」イベントが発生すると、ＷＥＢ／ＡＰサーバ２００上の検索結果一覧表示フレームワーク２１０内のイベント振り分け部２１１は、イベントを受け取る。イベント振り分け部２１１は、イベントの種類により次の動作を決定する。イベント振り分け部２１１は、データ件数チェック呼出部２１４を呼び出し、業務アプリケーション２２０内のデータ件数取得部２２２を実行する。
【００５３】
データ件数取得部２２２は、要求された検索にヒットするデータ件数取得のＳＱＬ（Structured Query Language ）をＤＢサーバ３００に発行し、検索データ件数（検索にヒットしたデータの件数）を取得する。データ件数チェック呼出部２１４は、取得した検索データ件数と、ＭＡＸ検索件数５０３を比較する。
取得した検索データ件数がＭＡＸ検索件数５０３以下の場合は、検索結果一覧表示フレームワーク２１０の全件数５０９として保存し、データ取得呼出部２１６に制御を移す。取得した検索データ件数がＭＡＸ検索件数５０３以上の場合は、エラーである旨をクライアント端末１００に通知する。
【００５４】
データ取得呼出部２１６は、ＭＡＸメモリ保持件数５０２を入力情報として渡し、業務アプリケーション２２０内のデータ取得部２２３を実行する。
データ取得部２２３は、ＤＢサーバ３００に対しデータ取得のＳＱＬを発行し、検索結果データをＭＡＸメモリ保持件数５０２分取得する。取得した検索結果データはメモリ保持データ（レコードリスト）５１０として本フレームワーク２１０に保持し、一覧表示用データ作成部呼出部２１７に制御を移す。
【００５５】
一覧表示用データ作成部呼出部２１７は、業務アプリケーション２２０の一覧表示部分作成部２２６を実行する。一覧表示部分作成部２２６は、メモリ保持データ（レコードリスト）５１０を取り出し、画面表示件数５０１分の検索結果データを画面表示用に加工し、一覧表示用データ作成呼出部２１７に制御を移す。
こうして検索結果データが画面表示用に加工されると、イベント振り分け部２１１は、クライアント端末１００に「一覧検索」画面データとして返却する。
【００５６】
図６は、「ページ切替」イベント発生時の動作を示すシーケンスである。
クライアント端末１００から「ページ切替」イベントが発生すると、ＷＥＢ／ＡＰサーバ２００上の検索結果一覧表示フレームワーク２１０内のイベント振り分け部２１１は、イベントを受け取る。ページ切替イベントとは、前ページ切替ボタン「＜」５０４、後ページ切替ボタン「＞」５０５のクリック時に、発生する要求である。
【００５７】
イベント振り分け部２１１は、イベントの種類により次の動作を決定する。イベント振り分け部２１１は、イベント前処理呼出部２１２を呼び出し、業務アプリケーションのイベント前処理部２２４を実行する。
このイベント前処理とは、ネットワーク４００を介したクライアント端末１００からの要求が、すでに一覧検索をしたあとのページ切替要求であることの認証処理などである。
【００５８】
次に、メモリデータチェック部２１５へ制御が移り、メモリ保持データ（レコードリスト）５１０内に要求されたページ切替後のページの分の検索結果データが保持されているか否かをチェックする。
メモリ保持データ５１０に保持されていない場合、初回の一覧検索結果の表示時と同様に、データ取得呼出部２１６に制御が移される。データ取得部２２３はＤＢサーバ３００から検索結果データを取得し、データ取得呼出部２１６はメモリ保持データ（レコードリスト）５１０に検索結果データを格納し、一覧表示用データ作成呼出部２１７へ制御を移す。
メモリ保持データ５１０内に検索結果データが存在する場合は、一覧表示用データ作成呼出部２１７に制御が移り、ＤＢサーバ３００に対する検索は行わずにメモリ保持データ（レコードリスト）５１０から検索結果データを取得する。
【００５９】
一覧表示用データ作成部呼出部２１７は、業務アプリケーション２２０の一覧表示部分作成部２２６を実行する。一覧表示部分作成部２２６は、メモリ保持データ（レコードリスト）５１０を取り出し、画面表示件数５０１分の検索結果データを画面表示用に加工し、一覧表示用データ作成部呼出部２１７に制御を移す。
【００６０】
一覧表示用データ作成部呼出部２１７に制御が移ると、イベント振り分け部２１１はイベント後処理呼出部２１８を呼び出し、業務アプリケーション２２０のイベント後処理部２２５を実行する。
イベント振り分け部２１１は、こうして加工された検索結果データをクライアント端末１００に「ページ切替」画面データとして返却（送信）する。
【００６１】
本実施形態としての階層型データベース検索システムによれば、以下の効果が得られる。
第１の効果は、データの種類、検索頻度、およびメモリ取得頻度に基づき、データ検索の頻度を動的に調節することができるため、大量の検索データや頻繁なデータベースアクセスによるサーバ負荷、ネットワーク負荷を制御することができ、サーバなどネットワーク資源の活用を効率化することができ、性能改善が図れることである。
【００６２】
第２の効果は、各業務アプリケーション（データ取得）部分に対して、各業務アプリケーションで共通に使用可能な一覧検索表示部分を独立化し、フレームワーク化することにより、メンテナンス性をあげることができることである。
【００６３】
なお、上述した実施形態は、本発明の好適な実施形態であり、本発明の主旨を逸脱しない範囲内において、種々変形して実施することが可能である。
例えば、複数のクライアント端末１００がネットワーク４００を介してＷＥＢ／ＡＰサーバ２００に接続される構成である場合、ＷＥＢ／ＡＰサーバ２００が、上述したデータ制御件数設定情報５００と、画面表示件数５０１と、ＭＡＸメモリ保持件数５０２と、ＭＡＸ検索件数５０３と、全体ページ数５０７と、表示ページ数５０８と、全件数５０９と、メモリ保持データ（レコードリスト）５１０とを、クライアント端末１００毎に保持する構成とすることにより、複数のクライアント端末１００から発行される一覧検索処理のそれぞれを実行可能とすることができる。
【００６４】
また、クライアント端末１００は、ブラウザ機能を備え、インターネットに接続して通信可能なコンピュータであれば各種のものであってよく、例えば、ＰＣ、ＰＤＡ（Personal Digital Assistant）、携帯電話機などであってもよい。
【００６５】
また、ネットワーク４００は、コンピュータを通信可能に接続するものであれば各種のものであってよく、例えばインターネット、ＬＡＮ、ＷＡＮなどであってよい。
【００６６】
また、上述した各実施形態としての階層型データベース検索システムを実現するための処理手順をプログラムとして記録媒体に記録することにより、本発明の各実施形態による上述した各機能を、その記録媒体から供給されるプログラムによって、システムを構成するコンピュータのＣＰＵに処理を行わせて実現させることができる。
この場合、上記の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
すなわち、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体および該記録媒体から読み出された信号は本発明を構成することになる。
この記録媒体としては、例えば、フロッピー（登録商標）ディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ等を用いてよい。
【００６７】
この本発明に係るプログラムによれば、当該プログラムによって制御される階層型データベース検索システムに、上述した本発明に係る各実施形態としての階層型データベース検索システムにおける各機能を実現させることができる。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施形態としての階層型データベース検索システムの構成と、各機能の関連を示すブロック図である。
【図２】本発明による検索結果データを保持する件数の制御方式を概念的に示す図である。
【図３】検索結果の一覧をクライアント端末１００に表示させる画面イメージとＷＥＢ／ＡＰサーバ２００のデータを例示する図である。
【図４】「初期画面表示」イベント発生時の処理動作を示すシーケンスチャートである。
【図５】「一覧検索」イベント発生時の処理動作を示すシーケンスチャートである。
【図６】「ページ切替」イベント発生時の処理動作を示すシーケンスチャートである。
【符号の説明】
【００６９】
１００    クライアント端末
２００    ＷＥＢ／ＡＰサーバ（検索サーバ）
２１０    検索結果一覧表示フレームワーク（フレームワーク部）
２１１    イベント振り分け部（要求振り分け部）
２１２    イベント前処理呼出部
２１３    データ制御件数設定呼出部
２１４    データ件数チェック呼出部
２１５    メモリデータチェック部
２１６    データ取得呼出部
２１７    一覧表示用データ作成呼出部
２１８    イベント後処理呼出部
２２０（２２０ａ，２２０ｂ，・・・）    業務アプリケーション（アプリケーション部）
２２１    データ制御件数設定部
２２２    データ件数取得部
２２３    データ取得部
２２４    イベント前処理部
２２５    イベント後処理部
２２６    一覧表示部分作成部
３００    ＤＢサーバ（データベース）
４００    ネットワーク
５００    データ制御件数設定情報
５０１    画面表示件数
５０２    ＭＡＸメモリ保持件数（最大保持件数）
５０３    ＭＡＸ検索件数（最大検索件数）
５０４    前ページ切替ボタン
５０５    後ページ切替ボタン
５０６    ページ切替ボタン
５０７    全体ページ数
５０８    現在表示ページ数
５０９    全件数
５１０    メモリ保持データ（レコードリスト）
【図１】
2005063240.tif 000003
【図２】
2005063240.tif 000004
【図３】
2005063240.tif 000005
【図４】
2005063240.tif 000006
【図５】
2005063240.tif 000007
【図６】
2005063240.tif 000008