クラス CodeDataLoader


  • final class CodeDataLoader
    extends java.lang.Object
    コードオブジェクトを作成するデータロードクラスです。 systemId と lang に対応したコードオブジェクトを作成します。 コードオブジェクトは、項目(CLM)に対して、複数のコード(CODE)を持っています。 この複数のコードを表示順に持つことで、プルダウンメニュー等の表示順を指定します。 コードオブジェクトを作成する場合は、同一項目・コードで、作成区分(KBSAKU)違いの場合は、 最も大きな作成区分を持つコードを使用します。 作成区分(KBSAKU)は、他のリソースと異なり、同一項目・コード単位に設定すべきです。 これは、通常は項目単位に作成区分を持つべきところを、コード単位でしか 持てないデータベースの設計になっている為です。アプリケーション側で設定条件を きちんと管理すれば、作成区分を使用できますが、一般にはお奨めできません。 作成区分(KBSAKU)='0' のデータは、マスタリソースとして、エンジンとともに 配布されるリソースになります。 読み込みフラグ(FGLOAD)は、使用しません。 コードリソースに関しては、システム起動時に、すべてのコードリソースをエンジン内部 に取り込みます。ただし、リソースのキャッシュに、WeakHashMap クラスを使用しているため、 メモリオーバー時には、クリアされるため、単独での読み取りも行います。 SYSTEM_ID='**' は、共通リソースです。 これは、システム間で共通に使用されるリソース情報を登録しておきます。
    機能分類
    リソース管理
    変更履歴:
    4.0.0.0 (2004/12/31) 新規作成
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • フィールドの概要

      フィールド 
      修飾子とタイプ フィールド 説明
      static java.lang.String QUERY
      DBリソースの初期一括読み込みのクエリー
      static java.lang.String QUERY2
      DBリソースの個別読み込み時のクエリー
      static boolean USE_DB_APPLICATION_INFO
      コネクションにアプリケーション情報を追記するかどうか指定
    • コンストラクタの概要

      コンストラクタ 
      コンストラクタ 説明
      CodeDataLoader​(java.lang.String systemId, boolean initLoad, LabelDataLoader lLoader)
      lang 毎に ファクトリオブジェクトを作成します。
    • メソッドの概要

      すべてのメソッド インスタンス・メソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      void clear()
      CodeData オブジェクトのキャッシュをクリアして、再作成します。
      void clear​(java.lang.String key)
      CodeData オブジェクトのキャッシュを個別にクリアします。
      CodeData getCodeData​(java.lang.String key)
      CodeData オブジェクトを取得します。
      CodeData getCodeData​(java.lang.String key, java.lang.String query)
      CodeData オブジェクトを取得します。
      • クラスから継承されたメソッド java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • フィールドの詳細

      • QUERY

        public static final java.lang.String QUERY
        DBリソースの初期一括読み込みのクエリー
        関連項目:
        定数フィールド値
      • QUERY2

        public static final java.lang.String QUERY2
        DBリソースの個別読み込み時のクエリー
        関連項目:
        定数フィールド値
      • USE_DB_APPLICATION_INFO

        public static final boolean USE_DB_APPLICATION_INFO
        コネクションにアプリケーション情報を追記するかどうか指定
    • コンストラクタの詳細

      • CodeDataLoader

        CodeDataLoader​(java.lang.String systemId,
                       boolean initLoad,
                       LabelDataLoader lLoader)
        lang 毎に ファクトリオブジェクトを作成します。
        パラメータ:
        systemId - システムID
        baseId - ベースシステムID
        initLoad - リソースデータの先読み可否(true:先読みする)
        lLoader - ラベルデータローダー
    • メソッドの詳細

      • getCodeData

        public CodeData getCodeData​(java.lang.String key)
        CodeData オブジェクトを取得します。 作成したCodeDataオブジェクトは,内部にプールしておき,同じリソース要求が あったときは,プールの CodeDataを返します。
        パラメータ:
        key - コードのキー
        戻り値:
        CodeDataオブジェクト
        変更履歴:
        4.3.8.0 (2009/08/01) rawShortLabel追加, 5.6.8.2 (2013/09/20) rawLongLabel追加, 6.2.0.0 (2015/02/27) description 概要説明 追加, 7.2.6.0 (2020/06/30) "**"以外にベースとなるSYSTEM_ID(RESOURCE_BASE_SYSTEM_ID)設定の対応
      • getCodeData

        public CodeData getCodeData​(java.lang.String key,
                                    java.lang.String query)
        CodeData オブジェクトを取得します。 作成したCodeDataオブジェクトは,内部にプールしておき,同じリソース要求が あったときは,プールの CodeDataを返します。 引数にQUERYを渡すことで、DBから、動的にコードリソースを作成できます。 引数の順番は、CodeData で定義している CLM,CODE,LNAME,SNAME の順番のままです。 QUERY には、key を引数にとる必要があります。つまり、WHERE CLM = ? の様な記述が必要です。
        パラメータ:
        key - コードのキー
        query - 検索SQL(引数に、? を一つ持つ)
        戻り値:
        CodeDataオブジェクト
        変更履歴:
        5.4.2.2 (2011/12/14) 新規追加。
      • clear

        public void clear​(java.lang.String key)
        CodeData オブジェクトのキャッシュを個別にクリアします。 リソースデータの更新など、一部分の更新時に、すべてのキャッシュを 破棄するのではなく、指定の分のみ破棄できる機能です。
        パラメータ:
        key - コードのキー
        変更履歴:
        4.0.2.0 (2007/12/25) コードリソースクリア時に対応するラベルリソースもクリアする。
      • clear

        public void clear()
        CodeData オブジェクトのキャッシュをクリアして、再作成します。