寫法為:1、使用“${…}”,語法為“l(fā)ike '${…}'”;2、使用“#{…}”,語法為“l(fā)ike '#{…}'”;3、使用CONCAT函數連接參數形式,語法為“l(fā)ike CONCAT('%',#{…},'%')”。
本教程操作環(huán)境:windows7系統(tǒng)、java10版、Dell G3電腦。
mybatis中對于使用like來進行模糊查詢的幾種方式:
(1)使用${…}
注意:由于$是參數直接注入的,導致這種寫法,大括號里面不能注明jdbcType,不然會報錯
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'VARCHAR' in 'class com.utry.ucsc.dao.bean.KnowledgeLibraryBean'
弊端:可能會引起sql的注入,平時盡量避免使用${…}
(2)使用#{…}
注意:因為#{…}解析成sql語句時候,會在變量外側自動加單引號' ',所以這里 % 需要使用雙引號" ",不能使用單引號 ' ',不然會查不到任何結果。
(3)使用CONCAT()函數連接參數形式
相關免費學習推薦:java基礎教程