大家好,项目中使用的是mybatis-plus,所有实体类的id都是都是雪花算法生成,我想写一个通用的新增方法,如下:
mapper:
void insertData(InsertVo insertVo);
xml:
<insert id="insertData" parameterType="InsertVo">
INSERT INTO ${table}
(
id,
${column1} ,
${column2}
)
VALUES
<foreach collection="c2values" item="value" index="index" separator="," >
(
REPLACE(UUID(), '-', ''),
#{c1value},
#{value}
)
</foreach>
</insert>
上面方法可以生成id,但是却与mybatis-plus的雪花算法生成的id格式不同,我想问是否有方法可以让mybatis-plus自动为我的代码生成id,就类似mybatis-plus的save(T entity)方法那种效果。或者是在xml中可以调用mybatis-plus的雪花算法方法也可以。谢谢!
mybatis plus的处理,基本宣告了你想不改造点东西,直接通过mybatis plus去实现的想法不可实现(tableInfo被初始化,只能是通用mapper的方法);
实现方案也挺多的,一种方案是mybatis插件,想要啥有啥,再一种就是自己实现通用mapper,采用第二种写个demo
运行结果:

