【筆記】MyBatis Plugin - BaseMapper 製作
今天我們接續上次的【筆記】MyBatis Dynamic SQL。
這次要跟大家介紹的是『如何在 Mybatis Generator 中使用客製化 Plugin』。
Quick Start
如果我們沒有特別製作客製化的 plugin 使用 Mybatis Generator
時,我們有幾張資料表就會產生相對應的幾個 Mapper
檔案,如:
如果我們希望能建立一個 BaseMapper
讓其他的產生的 Mapper
都繼承這個 BaseMapper
我們應該怎麼調整呢?
先準備資料庫與 init data
Include Dependencies
build.gradles1
2
3implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.0.1'
implementation 'org.mybatis.generator:mybatis-generator-core:1.4.0'
implementation 'org.mybatis.dynamic-sql:mybatis-dynamic-sql:1.1.4'
先建立 BaseMapper
撰寫 Plugin
說明:
- 由於我是使用
Spring framework
因此需要在產生的Mapper
檔加上Repository
的 annotation,防止 IDE 出現警示。 - 由於當有兩個欄位是
PK
時會產生{TableName}Key
,只有一個欄位是PK
時則沒有,所以直接取該型態。
建立 myBatis-generator.xml
說明:
targetRuntime
如果設定是MyBatis3
- 添加
plugin
建立 MBGenerator.java
執行 Main
程式
產生結果
實際應用
- 建立一個
BaseService.java
- 撰寫
AdmUserServiceImpl.java
1 | @Service |
Donate
謝謝您的支持與鼓勵