#{}佔位符:佔位
如果傳入的是基本型別,那麼#{}中的變數名稱可以隨意寫
如果傳入的引數是pojo型別,那麼#{}中的變數名稱必須是pojo中的屬性.屬性.屬性…
${}
拼接符:字串原樣拼接
如果傳入的是基本型別,那麼${}
中的變數名必須是value
如果傳入的引數是pojo型別,那麼${}
中的變數名稱必須是pojo中的屬性.屬性.屬性…
注意:使用拼接符有可能造成sql注入
finduserbyid" parametertype="
int" resulttype="
cn.itheima.pojo.user
">
select * from user where id=#
select>
finduserbyusername" parametertype="
string
" resulttype="
user
">
select * from user where username like '
%$%'
select>
mybatis拼接符和佔位符的區別
佔位符 1.佔位符可以用來設定引數,如果傳進來的是基本型別,也就是 string,long,double,int,boolean,float等 那麼 裡面的變數名可以隨意寫,什麼abc,等等,這個名字和傳進來的引數名可以不一致。2.如果傳進來的是pojo型別,那麼 中的變數名必須是pojo的屬性名,...
Mybatis佔位符 與佔位符 區別
速度快,能防止sql注入,是佔位符方式,先預編譯,然後填充引數,字串格式,使用者名稱 引數只是下劃線上的內容 是直接拼接到語句上,這種方式需要自己拼括號和引數,但是也可以拼接想執行的任何語句,也就是傳說中的sql注入 詳情如下 在mybatis中使用引數進行sql拼裝經常會使用到 和 兩種引數的設定...
mybatis 之 佔位符 和
佔位符用來設定引數,引數的型別可以有3種,基本型別,自定義型別,map基本型別作為引數,引數與佔位符中的名稱無關。select from t role where id 測試 test public void testselectone 自定義型別作為引數,自定義類中需要為為屬性提供get方法,如果...