それでもリバースエンジニアリングを使うのか?低すぎるは、一般的なマッパーにそれを試してみてください!

共通マッパーとは何ですか?

一般マッパーが大幅に非常に便利な単一テーブルのCRUDを提供し、人材ORMの開発を容易にすることができます。
それは非常に単純なテーブル補助MyBatisの開発コンポーネントであることを単純に言って、一般的なマッパーは何ですか。MyBatisのを置き換えることが、より便利にMyBatisのを開発するものではありません。

あなたは簡単に自分の一般的な方法を開発することができ、一般的な方法で自分のニーズに応じて選択することができます。

なぜ共通マッパーでしょうか?

ネイティブMyBatisの痛みのポイント

データベーステーブルのフィールドに変更した場合に1、mapper.xmlファイルは、SQLの多くがあり、私たちは、設定ファイルを変更する必要があります

2、表どこから*、自分のSQLページを実現選択する必要...リミット1,3

自分の手書き文字をページング、質量参加ページに加えて、pageSizeをもカウントエントリの総数を返す必要があります。

3、貧しいポータビリティデータベース:プロジェクトは、Oracleなどのデータベースの交換、である場合 - > mysqlの、mapper.xmlでSQLへの再書き込みが原因のOracle PLSQLの、およびMySQLのサポート機能が異なっています。

図4は、生成されたコードが大きすぎます。

5、バッチ処理、バッチ挿入、バッチ更新、あなたから記述する必要があります。

どのように共通マッパーを使用するには?

1、導入/瓶パッケージに依存しています

一般マッパーは、MyBatisの使用に沿ったものである、あなたはMyBatisの環境を持っていることを確認してください。

    <! - 通用マッパー- > 
    < 依存> 
      < groupIdを> com.github.abel533 </ groupIdを> 
      < たartifactId >マッパー</ たartifactId > 
      < バージョン> 2.3.4 </ バージョン> 
    </ 依存関係>

2、MyBatisの構成プロファイル

構成 - MyBatisの設定ファイルでは>プラグインは、以下のプラグインを追加します

<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> 
<!DOCTYPE構成
        PUBLIC " -  // mybatis.org//DTDコンフィグ3.0 // EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd" > 
< 設定> 
    < プラグイン> 
        <! - 一般マッパー- > 
        < プラグインインターセプター= "com.github.abel533.mapperhelper.MapperInterceptor" > 
            <! - プライマリキーインクリメントライトバック方式、デフォルト値のMYSQL、詳細はドキュメントを参照してください- > 
            < プロパティ=「IDENTITY」=「MYSQL」 /> 
            <! - ユニバーサルマッパーインターフェイス、より一般的なインタフェースカンマで区切られた- > 
            < プロパティ=「マッパーによって」=「com.github.abel533.mapper.Mapper」 /> 
        </ プラグイン>
    </ プラグイン> 
</ 設定>

3、コンフィギュレーションのJavaBean

@Table追加注釈以下に示すように、我々は@GeneratedValueからの増加がある場合は、対応する属性を主キーフィールドに@Idコメントを追加するには、クエリにしたいのJavaBeanも、注釈を追加する必要があります。

パッケージcn.rayfoo.bbs.bean;

輸入lombok.Data;
輸入org.springframework.format.annotation.DateTimeFormat。

輸入javax.persistence.GeneratedValue;
輸入javax.persistence.GenerationType;
輸入javax.persistence.Id;
輸入javax.persistence.Table;
輸入java.util.Date;

/ **
 * 2020年2月21日午前21時18分に[email protected]ルナによって作成されました
 *ユーザー
 * / 
表@ @データ(名前 = "ユーザー" パブリック クラスユーザー{
    @Id
    @GeneratedValue(戦略 = GenerationType.IDENTITYを)
     プライベート整数ID。
    プライベート文字列のログイン名。
    プライベート文字列のパスワード。
    プライベート文字列のユーザ名。
    プライベート文字列のnikename。
    プライベート文字列のアバター。
    @DateTimeFormat(パターン = "YYYY-MM-DD HH:MM:SS" プライベート日付CREATETIME。
}

4、マッパー継承<一般的な>

MyBatisのマッパーインタフェースの継承マッパー<>、ジェネリッククラスへの最後のステップの追加注釈として指定

パッケージcn.rayfoo.bbs.mapper;

輸入cn.rayfoo.bbs.bean.User;
輸入com.github.abel533.mapper.Mapper;

/ **
 * 2020年2月21日夜11時08に[email protected]ルナによって作成されました
 * / 
パブリック インターフェイス UserMapperは延びマッパー<ユーザー> {

    / **
     *ユーザーのログイン名のクエリに基づいて、
     * @param ログイン名
     * @return 
     * /
    ユーザーselectByLoginName(文字列のログイン名)。
}

これまでのところ、GMマッパーが設定されている、我々はマッパークラスが拡大する方法はありません継承インタフェースをテストすることができます

 

 

おすすめ

転載: www.cnblogs.com/zhangruifeng/p/12345419.html