已采納回答 / 老猿
? ? ? ? LambdaQueryWrapper可以在service中使用,前提是你的service要繼承mp的通用service,我在最后一節中有講LambdaQueryWrapper怎么用。直接用你的service對象.lambdaQuery()然后根據需求一頓鏈式操作即可。而使用LambdaUpdateChainWrapper,是直接你的service對象.lambdaUpdate()然后也是根據需求一頓鏈式調用。? ? ? ?你寫的那種new一個LambdaUpdateChainWrapper...
2020-01-16
講師回答 / 老猿
? ? ? ? 同學你好,這個問題可能沒有標準答案,我說說我的看法,使用MP,你的service可以繼承mp的通用service。在通用service中已經把操作本實體的mapper給你注入進來了。你可以在service中實現一個根據年齡查詢用戶的方法。如果其他service要用,有一種方式是把這個service注入到另一個service中,直接調用,但這種使用方式有爭議,有的單位不讓這么干,因為同層依賴了。? ? ? ?方式二,你這個查詢可以寫在Mapper中,就是原生的Mybatis怎么寫,你就怎么寫...
2020-01-16
講師回答 / 老猿
怎么留言系統給我截斷了,再發一遍,可以這樣理解,springboot中推薦用配置類這種配置方式,就跟原來spring使用xml配置bean是一個效果。還有PaginationInterceptor本質上是mybatis過濾器,如果你想了解mybatis過濾器的相關內容,可以在網上查資料,很多的。
2020-01-13
已采納回答 / 老猿
? ? ? ? 使用mp的分頁插件實現分頁,如果是單表查詢,并且不是自定義的sql,用mp提供的方法,是不用寫sql的,直接用就可以了。實現分頁的話,一般是需要發出兩條sql語句的,一條查詢符合當前條件的總記錄數,一條查詢當前頁的記錄(List類型的),如果不用分頁插件,你要寫兩條sql的。而且不同數據庫的分頁語法是不一樣的,有的數據庫的分頁語法比較麻煩,例如oracle。? ? ? 所以一般情況下,還是用mp的分頁插件比較方便。
2020-01-10
已采納回答 / 老猿
? ? ? ? 那是因為你沒下載源代碼,你在idea中看到的源碼其實是class文件反編譯后得到的,class文件中不能保存注釋信息。? ? ? ?你可以點擊你那張截圖界面右上角的Download Sources下載源碼。或者在Project視窗選擇項目,右鍵->Maven->Download Sources下載所有依賴的源碼。
2020-01-10
已采納回答 / 老猿
? ? ? ?queryWrapper中的絕大多數方法都避免了sql注入問題,只有少數方法存在sql注入,你可以查看官方的文檔,地址為:https://mybatis.plus/guide/wrapper.html。上面清楚的告訴你哪個方法會有sql注入風險。 ? ? ? ? 對于存在sql注入的方法,建議能不用盡量不用。如果要用的話,要確保里面的參數不存在sql注入問題。確保的方式可以是自己編寫檢查代碼,對參數進行驗證,或者確保那個參數是你自己后端的代碼根據業務邏輯正確計算出來的不是從前端傳的等。
2020-01-10
講師回答 / 老猿
基本數據類型如int、long作為成員變量,如果沒有賦初始值,那么默認是0。而包裝類作為成員變量,沒有賦初始值的話,默認為null。如果你使用基本類型,某個對象的某些基本數據類型成員變量沒有設置值,你用insert方法插入,給你插入了0,可能跟你要的預期效果不一樣,導致業務邏輯錯誤。
2020-01-02