MyBatis中#{}和${}
在MyBatis中有兩種動態傳遞引數的方式#{},${}
#{}:佔位符
KaTeX parse error: Expected 'EOF', got '#' at position 9: {}:拼接符 #̲{}是預編譯,{}是字串拼接
變數替換後#{}會自動加上單引號,${}不會加上單引號
#{}能防止sql注入 ${}不能防止sql注入
#{} 和 KaTeX parse error: Expected 'EOF', got '#' at position 20: …例項:假設傳入引數為 1 1)#̲{}:select * fro…{}:select * from t_user where uid= 'KaTeX parse error: Expected 'EOF', got '#' at position 16: {uid}' (2)然後 1)#̲{}:select * fro…{}:select * from t_user where uid= ‘1’
(3)最後
1)#{}:select * from t_user where uid= ‘1’
2)${}:select * from t_user where uid= ‘1’
#{} 和 ${} 在使用中的技巧和建議
(1)不論是單個引數,還是多個引數,一律都建議使用註解@Param("")
(2)能用 #{} 的地方就用 #{},不用或少用 ${}
(3)表名作引數時,必須用 ${}。如:select * from ${tableName}
(4)order by 時,必須用 ${}。如:select * from t_user order by ${columnName}
(5)使用 ${} 時,要注意何時加或不加單引號,即
和
′
{} 和 '
和′{}’
相關文章
- 淺析mybatis中${}和#{}取值區別MyBatis
- MyBatis中#{}和${}的區別詳解MyBatis
- spring和mybatis中的連線池和快取SpringMyBatis快取
- 工作發狂:Mybatis 中$和#千萬不要亂用!MyBatis
- 【Java面試】Mybatis中#{}和${}的區別是什麼?Java面試MyBatis
- 「Mybatis系列」Mybatis開發方式和配置MyBatis
- Mybatis原理和SqlSessionMyBatisSQLSession
- 深入淺出MyBatis:JDBC和MyBatis介紹MyBatisJDBC
- Mybatis中updateByPrimaryKeySelective和updateByPrimaryKey的用法區別MyBatis
- MyBatis中的<where>標籤和where子句的區別MyBatis
- Mybatis中#{}和${}傳參的區別及#和$的區別小結MyBatis
- Mybatis中List傳值MyBatis
- MyBatis中的事務MyBatis
- 深入淺出MyBatis:MyBatis解析和執行原理MyBatis
- MyBatis mapping.xml中的flushCache和useCache的使用MyBatisAPPXML
- 如何在mybatis 中傳多個引數,如何在mybatis 中遍歷 集合?MyBatis
- 學習MyBatis必知必會(2)~MyBatis基本介紹和MyBatis基本使用MyBatis
- SpringBoot 中的 MyBatisSpring BootMyBatis
- Mybatis中的設計模式MyBatis設計模式
- Mybatis中的小知識MyBatis
- Mybatis中的攔截器MyBatis
- Mybatis-Plus中的MetaObjectHandlerMyBatisObject
- Mybatis中foreach的使用MyBatis
- MyBatis中的一級快取和二級快取介紹MyBatis快取
- 【Mybatis系列】從原始碼角度理解Mybatis的$和#的作用MyBatis原始碼
- oracle和mybatis整合,批次插入OracleMyBatis
- Eclipse中引入MyBatis約束EclipseMyBatis
- mybatis中的增刪改操作MyBatis
- mybatis中@Mapper使用介紹MyBatisAPP
- Spring Boot 整合 Mybatis 和 MySQLSpring BootMyBatisMySql
- mybatis逆向工程和SSM框架整合MyBatisSSM框架
- MyBatis 作用域和生命週期MyBatis
- JPA和mybatis的CRUD比較MyBatis
- MyBatis的解析和執行原理MyBatis
- springboot和mybatis結合Spring BootMyBatis
- MyBatis和Spring設定callSettersOnNullsMyBatisSpringNull
- Mybatis中Foreach動態SQL標籤(map和list兩種情況)MyBatisSQL
- Mybatis中Oracle的拼接模糊查詢MyBatisOracle