【Mybatis-plus-join】 自定义函数关键字例如Distinct

Metadata

title: 【Mybatis-plus-join】 自定义函数关键字例如Distinct
date: 2023-01-22 18:41
tags:
  - 行动阶段/完成
  - 主题场景/组件
  - 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
  - 细化主题/Module/Mybatis-plus-join
categories:
  - Mybatis-plus-join
keywords:
  - Mybatis-plus-join
description: 【Mybatis-plus-join】 自定义函数关键字例如Distinct

【Mybatis-plus-join】 自定义函数关键字例如Distinct

为何要这个东西,可能有些数据库关键字不一样,他有默认实现,一般情况下不需要传,除非你的数据库真是关键字不一样

// 第一步需要建个类,实现IFuncKeyWord
public class FuncKeyWordImpl implements IFuncKeyWord {
    @Override
    public String distinct() {
        return "distinct";
    }
}

// 第二部在构造器中set进去
JoinLambdaWrapper<Users> wrapper = joinLambdaQueryWrapper(Users.class)
                .setFuncKeyWord(new FuncKeyWordImpl())
  
// 后续会改进为增加全局注入,但是这种方式依旧会保留,避免你多数据源情况下两个数据库查询的关键字都不相同