【第四回】MyBatis Generatorの実行方法と流れ

Javaウェブアプリ開発

はじめに

DreamHanksの松下です。今回はMyBatis Generatorを実行した際の動きについて解説していきます。

連載記事まとめ

 

MyBatis Generatorとは

MyBatis はカスタム SQL、ストアドプロシージャ、高度なマッピング処理に
対応した優れた永続化フレームワークです。

ざっくり説明すると
JavaプログラムとDB間のデータを相互に変換授受してくれる通訳のようなものです。
(Object-Relational Mapper(O/RM)の一種)Java ObjectとMapperの自動生成機能そのものです。

 

mybatis-generator.xmlについて

このxmlファイルがMyBatis Generatorの実行ファイルとなります。
実行することによって、下記の3つのクラスを作成してくれます。
・Dao
・Dto
・Mapper

mybatis-generator.xml

 

一つづつソースの意味を解説していきます。

上記の記載は接続するDBの設定です。
上から順に
・DBの場所の特定
・DB接続する際のpasswordの設定
・DB接続する際のuserIdの設定

上記の記載は作成するものをどこに作るのかを設定しています。
上から順に
・DTOをどこに作るか?
・Mapperをどこに作るか?
・DAOをどこに作るか?

上記の記載は作る対象を設定しています。

順に
・スキーマの設定
・対象のテーブル名の設定

 

MyBatis Generator実行方法

①「プロジェクト右クリック」 ⇒ 「実行」 ⇒ 「実行の構成」
⇒ 「MyBatis Generator右クリック」 ⇒ 「新規作成」

②名前を開発対象のプロジェクト名にする
③構成ファイルを開発対象のプロジェクトの[mybatis-generator.xml]があるパスまで通す

例:
「${workspace_loc:/WorkManager/src/main/resources/mybatis-generator.xml}」

③実行
下記のようにmybatis-generator.xmlで指定したディレクトリに以下のファイルが出来ます。

image.png

◆Daoクラスについて
データベースの接続、切断、SQLの発行など、データベースへのアクセスを専門に扱うクラスです。
Serviceクラスから呼ばれるインターフェースメソッドがまとめられています。

◆Mapperクラスについて
上記のDaoのメソッドと紐づくSQL文をxml形式でマッピングしているクラスです。

◆Dtoについて
上記の流れでDBからデータを取得した際に、取得したデータを保持するための箱のようなものです。
・getter,setterメソッドを使ってControllerとの値のやり取りができます。
・View(JSP)からもpathingして値のやり取りができます。

 

MyBatis Generator実行時の流れ

image.png

①実行を行い、mysql-connector-java-8.0.11というDBコネクトをするためのライブラリによってDB接続ができます。

②対象のスキーマのTBLの構成をスキャンします

③スキャンしたTBLの構成に従って、Dao, Mapper, Dtoクラスを自動生成します。

 

コメント