Mybatis sql查不到數據

如題,數據庫中有數據,參數傳遞的也對,打印出sql 到數據庫執行也能查到數據,但是代碼就是不行,就是查不到數據。
原始mapper如下:
在這裏插入圖片描述

後來改爲下面,成功了
在這裏插入圖片描述
原因是:
MyBatis看到 #{}會認爲你在給sql中的變量賦值,就像JDBC編程中給問號賦值一樣(自動在前後加單引號)也就是說,他把你傳入的字符串並沒有當做多個值,而是當做一個大的字符串,所以查詢不到值

而MyBatis看到${}的時候會直接將之替換成變量的值而不做任何處理。

將#變爲$,去掉jdbcType即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章