mybatis 模糊查詢和的作用
阿新 • • 發佈:2019-02-16
1. sql中字串拼接
SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');
2. 使用 ${...} 代替 #{...} (不能防止sql注入 #{}---> 可以防止sql注入的問題)
SELECT * FROM tableName WHERE name LIKE '%${text}%';
3. 程式中拼接
Java
// or String searchText = "%" + text + "%";
String searchText = new StringBuilder("%").append(text).append("%").toString();
parameterMap.put("text", searchText);
SqlMap.xml
SELECT * FROM tableName WHERE name LIKE #{text};
<![CDATA[ ]]> 標記避免Sql中與xml規範相沖突的字元對xml對映檔案的合法性造成影響
如:<![CDATA[price_from >= #{price_from}]]>
轉自:http://yzfdiligence24.blog.163.com/blog/static/2145070342013101911216900/