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>