springboot 如何通过后台创建临时表
其实创建临时表,跟增删改查的原理是一样的,只不过是在xml中写一个创建临时表sql语句,xml中并不是只能写增删改查语句的
1,首先弄一个xml
在xml中写一个修改头标签,因为是建立的是临时表,所以表名要变,需要在表名处接收一个参数$(tableName) ,这时xml文件就写好了
2,在mapper中写出对应方法
这时需要在参数中加上注解@Param,只有加上这个注解,在xml中才可以接收到我传入的参数
3,接下来在service层和Controller层中调用这个方法
然后在postman中传入需要的表名,就可以生成这个表了。
springboot mybatis下临时表的创建和删除,可用于查重去重
@Update({"drop temporary table if exists ${tableName};", "create temporary table ${tableName} select doctor_id from crm_speaker where 1=2 "})
void createTemoraryTable(@Param("tableName") String tableName);
@Insert("<script>" +
"insert into ${tableName} (doctor_id) values\n" +
" <foreach collection=\"list\" item=\"doct\" index=\"index\" separator=\",\">\n" +
" (" +
" #{doct.doctorId,jdbcType=VARCHAR}\n" +
" )\n" +
" </foreach>\n" +
"</script>")
void insertBatchCheckDatas(@Param("list") List<SpeakerDO> dOs, @Param("tableName") String tableName);
@Update({"drop temporary table if exists ${tableName}"})
void dropTemporaryTable(@Param("tableName") String tableName);
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。