MyBatis-Plus提供了一個對於SQl注入器的實現:LogicSqlInjector。
我們只需要仿照這個類便可輕松完成自定義。
(代碼質量比網上隨便找的很多文章要好,畢竟作者自己寫的。)
對應的實現類包括:
- 首先,是一堆的AbstractLogicMethod實現類(AbstractLogicMethod是AbstractMethod的子類,前者重寫了后者一些方法,方便邏輯sql語句的生成。而我們只需要繼承后者,仿照前者實現即可)
- 然后,是SqlMethod枚舉類(優雅使用枚舉類的代表,簡化注入sql的管理。我們只需要仿照着些自己的枚舉類即可)
- 最后,模仿BaseMapper接口,給出自定義的接口(並且在接口中有自定義的方法聲明),即可通過注入獲取接口的代理實現,調用自定義sql注入器給出的方法實現。
具體自定義代碼的實現,可以參考:https://www.cnblogs.com/liuyangfirst/p/9744011.html