mybatis plus 在xml中编写insert语句,如何生成id ?
大家好,项目中使用的是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
运行结果:
回答:
mybatis plus 提供了批量插入和更新的方法
以上是 mybatis plus 在xml中编写insert语句,如何生成id ? 的全部内容, 来源链接: utcz.com/p/944587.html