springboot中實(shí)現(xiàn)通過(guò)后臺(tái)創(chuàng)建臨時(shí)表
springboot 如何通過(guò)后臺(tái)創(chuàng)建臨時(shí)表
其實(shí)創(chuàng)建臨時(shí)表,跟增刪改查的原理是一樣的,只不過(guò)是在xml中寫一個(gè)創(chuàng)建臨時(shí)表sql語(yǔ)句,xml中并不是只能寫增刪改查語(yǔ)句的
1,首先弄一個(gè)xml
在xml中寫一個(gè)修改頭標(biāo)簽,因?yàn)槭墙⒌氖桥R時(shí)表,所以表名要變,需要在表名處接收一個(gè)參數(shù)$(tableName) ,這時(shí)xml文件就寫好了
2,在mapper中寫出對(duì)應(yīng)方法
這時(shí)需要在參數(shù)中加上注解@Param,只有加上這個(gè)注解,在xml中才可以接收到我傳入的參數(shù)
3,接下來(lái)在service層和Controller層中調(diào)用這個(gè)方法
然后在postman中傳入需要的表名,就可以生成這個(gè)表了。
springboot mybatis下臨時(shí)表的創(chuàng)建和刪除,可用于查重去重
/** * 創(chuàng)建臨時(shí)表 */ @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); /** * 保存數(shù)據(jù)到臨時(shí)表里面以便校驗(yàn)數(shù)據(jù)重復(fù) */ @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); /** * 刪除臨時(shí)表 */ @Update({"drop temporary table if exists ${tableName}"}) void dropTemporaryTable(@Param("tableName") String tableName);
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Springboot如何使用Map將錯(cuò)誤提示輸出到頁(yè)面
這篇文章主要介紹了Springboot如何使用Map將錯(cuò)誤提示輸出到頁(yè)面,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08springboot?serviceImpl初始化注入對(duì)象實(shí)現(xiàn)方式
這篇文章主要介紹了springboot?serviceImpl初始化注入對(duì)象實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05Idea中mapper注入報(bào)錯(cuò)問(wèn)題及解決
這篇文章主要介紹了Idea中mapper注入報(bào)錯(cuò)問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03MyBatis Plus關(guān)閉SQL日志打印的方法
這篇文章主要介紹了MyBatis-Plus如何關(guān)閉SQL日志打印,文中通過(guò)圖文結(jié)合講解的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2024-02-02Springboot+redis+Vue實(shí)現(xiàn)秒殺的項(xiàng)目實(shí)踐
本文主要介紹了Springboot+redis+Vue實(shí)現(xiàn)秒殺的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08Java中Collections.emptyList()的注意事項(xiàng)
這篇文章主要給大家介紹了關(guān)于Java中Collections.emptyList()的注意事項(xiàng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03MyBatis接口綁定的實(shí)現(xiàn)方式和工作原理
在日常開發(fā)中,數(shù)據(jù)持久層是幾乎每個(gè)項(xiàng)目都會(huì)涉及的一個(gè)關(guān)鍵組成部分,MyBatis作為一個(gè)流行的持久層框架,其提供的接口綁定機(jī)制極大地簡(jiǎn)化了數(shù)據(jù)庫(kù)操作,本文將通過(guò)詳細(xì)的代碼示例和講解,帶你深入理解MyBatis接口綁定的工作原理和實(shí)踐方式,需要的朋友可以參考下2024-03-03