mybatisplus-plus多主键

巫马盛
2023-12-01
启动类加入
@EnableMPP
@EnableKeyGen
@EnableAutoFill
TableInfoHelper DEFAULT_ID_NAME 默认id为主键

所以会出现

Caused by: java.lang.RuntimeException: not found column for id
    at com.github.jeffreyning.mybatisplus.base.SelectByMultiIdMethod.getCol(SelectByMultiIdMethod.java:32)
    at com.github.jeffreyning.mybatisplus.base.SelectByMultiIdMethod.createWhere(SelectByMultiIdMethod.java:42)
    at com.github.jeffreyning.mybatisplus.base.SelectByMultiIdMethod.injectMappedStatement(SelectByMultiIdMethod.java:64)
1、Entity 原有id 名称 改 id1 
2、Entity 使用 @MppMultiId
3、Mapper 使用 MppBaseMapper
4、IService 使用 IMppService
5、ServiceImpl 使用 MppServiceImpl
6、插入更新 使用saveOrUpdateByMultiId
原id加入注解
@TableField(value = "id",fill= FieldFill.INSERT)
@InsertFill("select replace(newid(),'-','')")

不生效的会出现

Cannot insert the value NULL into column 'id', table 'jeecg-boot-new.dbo.XXX'; column does not allow nulls. INSERT fails

所以需要添加注解

@EnableAutoFill

 类似资料: