mybatis中的 和 的區別

2022-09-04 05:42:07 字數 445 閱讀 5768

一般能用#的就別用$.

#防止sql注入,將傳入引數當做字串,相當於自動給資料加乙個雙引號。

如:order by #user_id#,如果傳入的值是111,那麼解析成sql時的值為order by "111", 如果傳入的值是id,則解析成的sql為order by "id".

$將傳入的資料直接顯示生成在sql中。

如:order by $user_id$,如果傳入的值是111,那麼解析成sql時的值為order by user_id, 如果傳入的值是id,則解析成的sql為order by id.

select * from user_role where user_code = "100";

這句話而言,需要寫成 select * from $ where user_code = #

所以,$符是直接拼成sql的 ,#符則會以字串的形式 與sql進行拼接。

mybatis中的 和 的區別

1.將傳入的資料都當成乙個字串,會對自動傳入的資料加乙個雙引號。如 order by user id 如果傳入的值是111,那麼解析成sql時的值為order by 111 如果傳入的值是id,則解析成的sql為order by id 2.將傳入的資料直接顯示生成在sql中。如 order by u...

mybatis中的 和 的區別

相當於對資料 加上 雙引號,相當於直接顯示資料 1.將傳入的資料都當成乙個字串,會對自動傳入的資料加乙個雙引號。如 order by user id 如果傳入的值是111,那麼解析成sql時的值為order by 111 如果傳入的值是id,則解析成的sql為order by id 2.將傳入的資料...

mybatis中的 和 的區別

1.將傳入的資料都當成乙個字串,會對自動傳入的資料加乙個雙引號。如 order by user id 如果傳入的值是111,那麼解析成sql時的值為order by 111 如果傳入的值是id,則解析成的sql為order by id 2.將傳入的資料直接顯示生成在sql中。如 order by u...