1、#{ }是預編譯處理,MyBatis在處理#{ }時,它會將sql中的#{ }替換爲?,然後調用PreparedStatement的set方法來賦值,傳入字符串後,會在值兩邊加上單引號;
2、${ }是字符串替換, MyBatis在處理${ }時,它會將sql中的${ }替換爲變量的值,傳入的數據不會加兩邊加上單引號。
注意:使用${ }會導致sql注入,不利於系統的安全性!
MyBatis的${ }與#{ }有區別
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Spring開發:動態代理的藝術與實踐
原創
2024-04-16 22:33:07
代碼生成器之如何快速生成後端接口
原創
2024-03-11 23:29:01
mybatis使用,UpdateWrapper時間更新問題
原創
2024-03-08 00:44:23
迄今爲止最完整的DDD實踐
原創
2023-08-24 00:29:34
crabc-源碼閱讀記錄
原創
2023-08-11 23:59:49
【架構與設計】常見微服務分層架構的區別和落地實踐
原創
2023-04-18 12:00:15
StarRocks簡單使用
原創
2023-03-29 21:24:49
Mybatis的五種分頁方式詳解
原創
2023-03-27 00:18:32
MyBatis轉義符號問題集
原創
2023-02-25 13:09:19
IDEA插件Easy Code自定義模板
荼靡旖旎
2023-02-25 00:26:51
Mybatis源碼解析06-關鍵組件ParameterHandler
原創
2023-02-14 23:57:34
Mybatis源碼解析-配置、啓動加載
原創
2023-01-19 23:36:19
開源十年,AOSuite 開發平臺停止維護 [EOL]
原創
2022-12-24 22:05:18