首页 > 其他分享 >MyBatis的使用五(模糊查询)

MyBatis的使用五(模糊查询)

时间:2023-02-03 17:36:14浏览次数:42  
标签:String 模糊 Param 查询 str MyBatis LikeSelect

本文主要讲述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>

 

标签:String,模糊,Param,查询,str,MyBatis,LikeSelect
From: https://www.cnblogs.com/zwgitOne123/p/17089983.html

相关文章

  • 【转载】MyBatis-Plus中的逻辑删除使用 (使用注解:@TableLogic)
    前言开发系统时,有时候在实现功能时,删除操作需要实现逻辑删除就是将数据标记为删除,而并非真的物理删除(非DELETE操作),查询时需要携带状态条件,确保被标记的数据不被查询到。这......
  • CSP201612-3权限查询
            多年后再回头看这道题觉得很简单,写起来还是很复杂,我的书写习惯不好,找bug找了很久。特别注意在构建角色时,一个角色可能会有多个权限,取最大值,又......
  • 多线程事务回滚sqlSession, spring-mybatis 开启事务
    @ResourceSqlContextsqlContext;/***多线程事务.*@paramemployeeDOList*/@OverridepublicvoidsaveThread(List<EmployeeDO>employeeDOList)throwsSQL......
  • MyBatis使用四(查询详解)
    本文主要讲述如何在mybatis中进行查询操作【详解】一.查询User对象1.查询单个对象UserSelectUser接口声明如下//主要条件是使用idpublicinterfaceSelect......
  • 根据ip查询归属地工具类
    publicstaticStringgetAddrByIp(Stringip){if(StrUtil.isBlank(ip)){returnnull;}Stringurl="https://api01.aliyun.venuscn.com/ip?ip="+......
  • linux查询磁盘是否做raid
    1、查看是否安装mdadm包rpm-qa|grepmdadm2、查看磁盘是否做了raidmdadm-E/dev/sd[bcde]1#可以忽略/dev/sda,一般都是用作系统盘mdadm:Nomdsuperblockdetectedon/d......
  • C++ 哈希表查询_进入哈希函数结界的世界
    1.前言哈希表或称为散列表,是一种常见的、使用频率非常高的数据存储方案。哈希表属于抽象数据结构,需要开发者按哈希表数据结构的存储要求进行API定制,对于大部分高级语言......
  • mybatis
    Mybatis练习Mybatis1、创建数据库、导入数据CREATEDATABASE`mybatis`;USE`mybatis`;DROPTABLEIFEXISTS`user`;CREATETABLE`user`(`id`int(20)NOTN......
  • 笔记:海量数据的查询方法
    概述:每年大约有几千万近一亿的业务数据量,如何提高查询性能。具体方案:在表结构初始化阶段时,需要添加查询条件的索引;并且可以使用uuid主键和数字主键的联合业务主键,根据......
  • MyBatis的使用三(在sql语句中传值)
    本文主要介绍在mybatis中如何在sql语句中传递参数一.#{}和${}1.#{}和${}的区别#{}是预编译处理==>PreparedStatement${}是字符串替换==>S......