mybatis-plus查詢字段中含有關(guān)鍵詞時(shí)異常的問題及解決方案
問題分析思路
1.用自動(dòng)生成代碼工具生成的增刪改查代碼,發(fā)現(xiàn)都用不了
報(bào)錯(cuò)原因都是sql錯(cuò)誤。
2.然后我就把日志打印生成的sql復(fù)制到數(shù)據(jù)庫去執(zhí)行 發(fā)現(xiàn)也查詢不出來,會(huì)像下面這樣

3.查詢報(bào)錯(cuò)了,我就改變了如下的查詢方式,用select * 查出來了記錄,說明還是上面的sql有問題

4.定位問題以后,知道是sql的問題,我就看字段發(fā)現(xiàn)有一個(gè)大寫的字段好像是關(guān)鍵字,于是我就加上了反引號(hào) `order`去查詢就成功了。

5.由于查詢語句是從日志打印里面copy出來的,所以就斷定肯定也是同樣的問題導(dǎo)致的原因,此時(shí)我也斷定問題就在這里,就去網(wǎng)上找到了加上反引號(hào)的注解
@TableField("`order`")也算是學(xué)習(xí)到了新的注解用法,原來只知道
@TableField(value = "false")
這種用法
解決辦法
在實(shí)體類上加上注解并加上反引號(hào)

總結(jié)
是由于查詢的時(shí)候mybatiplus不能識(shí)別你的字段是否為關(guān)鍵字,這是需要你手動(dòng)在創(chuàng)建實(shí)體類的時(shí)候在關(guān)鍵字字段的上面加上注解@TableField("`order`")用反引號(hào)包起來。
這個(gè)反引號(hào)里面的order是一個(gè)關(guān)鍵字,包起來就可以解決了。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot與SpringCloud的版本對應(yīng)關(guān)系解讀
本文介紹了SpringBoot與SpringCloud的版本對應(yīng)關(guān)系,提供了一個(gè)官方的版本對應(yīng)表,并給出了個(gè)人的一些經(jīng)驗(yàn)總結(jié)2024-12-12
詳解使用Maven開發(fā)Web應(yīng)用詳細(xì)步驟
這篇文章主要介紹了詳解使用Maven開發(fā)Web應(yīng)用詳細(xì)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
SpringBoot整合Java DL4J實(shí)現(xiàn)文本分類系統(tǒng)
在當(dāng)今信息爆炸的時(shí)代,自然語言處理領(lǐng)域中的文本分類顯得尤為重要,文本分類能夠高效地組織和管理海量的文本數(shù)據(jù),隨著互聯(lián)網(wǎng)的飛速發(fā)展,我們每天都被大量的文本信息所包圍,本文將介紹如何使用 Spring Boot 整合 Java Deeplearning4j 來構(gòu)建一個(gè)文本分類系統(tǒng)2024-10-10
ActiveMQ消息隊(duì)列技術(shù)融合Spring過程解析
這篇文章主要介紹了ActiveMQ消息隊(duì)列技術(shù)融合Spring過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
Springboot支持Emoji表情的實(shí)現(xiàn)方法
本文主要介紹了Springboot 支持Emoji 表情,本篇的實(shí)現(xiàn)方式是僅需后端處理,具有一定的參考價(jià)值,需要的朋友可以參考一下。2021-07-07
Spring?Boot?Nacos?實(shí)現(xiàn)不停服發(fā)布過程詳解
這篇文章主要為大家介紹了Spring?Boot?Nacos實(shí)現(xiàn)不停服發(fā)布過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05

