MyBatis的使用五(模糊查询)

本文主要讲述mybatis如何进行模糊查询

方式1:concat('%',#{str},'%')

  LikeSelect接口声明如下

/**
 * 使用mybatis进行模糊查询
 */
public interface LikeSelect {
    // 处理模糊查询,使用concat('%',#{str},'%')
    List<User> selectLikeUser1(@Param("str") String str);
}

  LikeSelect.xml文件声明如下

<!--namespace绑定mapper的接口所在的包名.接口名-->
<mapper namespace="com.hspedu.mapper.LikeSelect">
    <!--// 处理模糊查询
        List<User> selectLikeUser(@Param("str") String str);-->
    <select id="selectLikeUser1" resultType="User">
        select * from t_user where username like concat('%',#{str},'%')
    </select>
</mapper>

方式2:'%${str}%'

  LikeSelect接口声明如下

public interface LikeSelect {
    // 处理模糊查询,使用'%${str}%'
    List<User> selectLikeUser2(@Param("str") String str);
}

  LikeSelect.xml文件声明如下

<!--namespace绑定mapper的接口所在的包名.接口名-->
<mapper namespace="com.hspedu.mapper.LikeSelect">
    <!--// 处理模糊查询
    List<User> selectLikeUser2(@Param("str") String str);-->
    <select id="selectLikeUser2" resultType="User">
        select * from t_user where username like '%${str}%'
    </select>
</mapper>

方式3:"%"#{str}"%"

  LikeSelect接口声明如下

public interface LikeSelect {
    // 处理模糊查询,使用"%"#{str}"%"
    List<User> selectLikeUser3(@Param("str") String str);
}

  LikeSelect.xml文件声明如下

<!--namespace绑定mapper的接口所在的包名.接口名-->
<mapper namespace="com.hspedu.mapper.LikeSelect">
    <!--// 处理模糊查询,使用
    List<User> selectLikeUser3(@Param("str") String str);-->
    <select id="selectLikeUser3" resultType="User">
        select * from t_user where username like "%"#{str}"%"
    </select>
</mapper>

 

posted @ 2023-02-03 17:27  zwGitOne  阅读(272)  评论(0编辑  收藏  举报