intra-mart Accel Kaiden! プログラミングガイド 第11版 2019-12-01

3.3.9. Manager

本項では、intra-mart Accel Kaiden!におけるManagerについて解説します。

3.3.9.1. マネージャとは?

intra-mart Accel Kaiden!のマネージャとは、データベース操作のAPIを提供しています。
マスタメンテナンスや申請書ガジェット等の機能ごとに様々なマネージャーが存在します。

3.3.9.2. マネージャの構成

intra-mart Accel Kaiden!のおけるマネージャは、継承するクラスの違いにより
「マスタマネージャ」「申請書ガジェットマネージャ」「その他マネージャ」に分類できます。
../../../../_images/manager.png

3.3.9.3. マネージャの呼び出し

呼び出す場所については特に制限はなく、どこからでも使用できます。
intra-mart Accel Kaiden!のプロジェクトマスタマネージャクラスを呼び出すサンプルを以下に掲載します。
  • @Resourceアノテーションによるコンポーネント取得
    @Resource
    public ProjectManager projectManager;
    
    public void xxxMethod() {
        projectManager.xxxx();
    }
  • コンポーネント名を指定してコンポーネント取得
    public ProjectManager projectManager;
    
    public void xxxMethod() {
        projectManager = SingletonS2Container.getComponent("projectManager");
        projectManager.xxxx();
    }

コラム

intra-mart Accel Kaiden!のマネージャクラスでは、@Resourceアノテーションを使用しない場合、
コンポーネント名を指定して取得しています。

3.3.9.4. マネージャの作成

最上位クラスのjp.co.slcs.kaiden2.base.foundation.manager.AbstractGenericManagerで提供している機能について、ポイントのみ解説していきます。
基本的な検索・登録・更新・削除のメソッドについては言及しません。

3.3.9.4.1. 会社認可

会社認可を参照するメソッド、しないメソッドが用意されていますので、必要に応じてマネージャに実装できます。

会社認可を参照するAPIはjp.co.slcs.kaiden2.base.foundation.manager.AuthorityCriteriaDtoを引数で受け取ります。
AuthorityCriteriaDtoには以下の内容が設定されており、認可設定で許可されているかどうかを判定します。
  • アクション
  • 認可判定基準日
  • 認可判定ユーザ (省略時はログインユーザを利用)
  • 認可判定ロケール

3.3.9.4.2. SQLファイル検索

複雑なSQL文を実行するためにSQLファイルによる検索メソッドが用意されています。

サービスクラスとSQLファイル名(パス除く)を引数で受け取ります。
「”WEB-INF/classes/META-INF/sql” + “サービスクラスのパッケージ” + “サービスクラス名”」のSQLファイルを
intra-mart Accel Kaiden!基底クラスが取得しています。

また、引数のlikeTargetにカラムを指定すると、部分一致検索条件に変換されます。

3.3.9.4.3. キーワード検索

キーワード検索を実行するメソッドを用意しています。
intra-mart Accel Kaiden!ではマスタメンテナンス画面の汎用検索画面で使用しており、
一つのテキストボックスに入力した値を複数カラムに対して検索を実施できます。