4
0

はじめに

こんにちは、Gakken LEAP のバックエンドエンジニアの Matsuura です。

Spring(Java)でDB操作の処理を実装する際には、MyBatisを採用することが多いですね。
ただ、MyBatisの初期設定では、クエリの実行内容や実行結果が確認できず、正しい結果が得られているかすぐには分かりません。
そのため本記事では、クエリの実行結果をコンソールログとして出力する方法をご紹介します。

方法

ディレクトリ構成

ディレクトリ構成は以下の通りとします。

src/
├─ main/
│  ├─ java/
│  │  ├─ com/
│  │  │  ├─ example/
│  │  │  │  ├─ mapper/
│  │  │  │  │  ├─ HogeDao.java
│  │  │  │  │  ├─ HogeDao.xml
│  ├─ resources/
│  │  ├─ application.yml

設定内容

対象となる@Mapperインターフェイスが格納されているディレクトリに対して、ロギングレベルを設定します。
今回の例であれば、com.example.mapper下のファイルをログ出力対象とします。
application.ymlに以下のように記述することで、クエリ実行ログ(SQLステートメント)がコンソールに出力されるようになります。

application.yml
logging:
  level:
    com.example.mapper: DEBUG

ちなみにapplication.ymlではなく、application.propertiesを利用している場合は、以下のように設定してください。

application.properties
logging.level.com.example.mapper=DEBUG

また、DEBUGの代わりにTRACEを設定すると、クエリの実行結果をコンソールに出力することが可能になります。

おわりに

数行で設定できるので、ぜひMyBatisを利用する際は設定してみてください!


Gakken LEAP では教育をアップデートしていきたいエンジニアを絶賛大募集しています!!

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0