當前位置:生活全書館 >

IT科技

> mybatis#和$的區別

mybatis#和$的區別

mybatis #和$區別是:

mybatis#和$的區別

1、“#”將傳入的資料當成一個字元串,會對自動傳入的資料加一個雙引號。例如“order by #id#”,如果傳入的值是111,那麼解析成sql時的值變為“order by "111"”,如果傳入的值是id,在解析成sql為“order by "id"”,其實原sql語句通常寫成 “order by #{id} 與order by #id#”的效果一樣。

2、“$”將傳入的資料直接顯示在sql語句中。例如“order by ${id}”,如果傳入的值是9則解析成sql語句為“order by 9”。

3、“#”方式能夠很大程度上防止sql注入,而“$”無法防止sql的注入,“$”一般用於傳入資料庫物件,例如傳入表名一般能用#就別用“$”,mybatis排序時使用order by動態引數時需要注意,使用“$”而不是“#”。

標籤: MyBatis
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/dianzi/l4xw3x.html