mybatis使用Oracle多条件查询只能用索引吗?
mybatis使用Oracle多条件查询只能用索引吗?这是映射文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "<a href="http://mybatis.org/dtd/mybatis-3-mapper.dtd">http://mybatis.org/dtd/mybatis-3-mapper.dtd</a>">
<!-- 当映射方法的id和接口定义的id相同的时候可以使用MAP的动态代理,这种方法就可以不使用DAO的实现类来直接调用map映射的方法 -->
<mapper namespace="site.undead.dao.IStudentDAO">
<!-- 多条件查询 -->
<select id="selectStudentByCondition" resultType="Student">
<!-- SELECT T.* FROM LINGYU97.STUDENT_TAB T WHERE T.NAME LIKE '%${NAME}%' --><!-- 这里的'%'#{NAME}'%'只是一个占位符,括号里填什么都可以 !!!但是很不建议使用这种方式,因为采用这种方式会被SQL注入攻击-->
<!-- SELECT T.* FROM LINGYU97.STUDENT_TAB T WHERE T.NAME LIKE CONCAT(CONCAT('%',#{NAME}),'%') --><!-- 这里的#{NAME}只是一个占位符,括号里填什么都可以 -->
SELECT T.*
FROM LINGYU97.STUDENT_TAB T
WHERE T.NAME LIKE '%'||#{name}||'%'
AND T.AGE > #{age}<!-- 这里的#{NAME}只是一个占位符,括号里填什么都可以 -->
</select>
</mapper>
应该都可以吧 可以 可以用索引,也可以用其他的 不是只能用索引,也可以用其他的
页:
[1]