除了最基本的CRUD以外,MyBatis同样可以实现模糊查询,有两种不同的方式。

测试时使用通配符

Mapper.xml

<!--模糊查询-->
<select id="getUserLike" resultType="com.wu.pojo.User" parameterType="String">select * from mybatis.user where `name` like #{name};
</select>

Test.java

@Test
public void getUserLike() {SqlSession sqlSession = MybatisUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);List<User> userList = mapper.getUserLike("%瓜%");for (User user : userList) {System.out.println(user);}//关闭SqlSession对象sqlSession.close();
}

该方法较为安全(推荐使用)

SQL拼接中使用通配符

Mapper.xml

<!--模糊查询-->
<select id="getUserLike" resultType="com.wu.pojo.User" parameterType="String">select * from mybatis.user where `name` like "%"#{name}"%";
</select>

Test.java

@Test
public void getUserLike() {SqlSession sqlSession = MybatisUtils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);List<User> userList = mapper.getUserLike("瓜");for (User user : userList) {System.out.println(user);}//关闭SqlSession对象sqlSession.close();
}

该方法虽看着和上面的方法只是通配符拼接的位置不同,而实际上可能会造成SQL注入的问题,不推荐使用。

MyBatis实现模糊查询相关推荐

  1. MyBatis 解决模糊查询包含特殊字符

    第一块:MyBatis 实现模糊查询方式 1.1 sql中字符串拼接 SELECT * FROM 表名 WHERE 字段名 LIKE CONCAT(CONCAT('%', #{参数}), '%'); ...

  2. mybatis like模糊查询_Java自学之mybatis:模糊查询和多条件查询

    学习目的 使用mybatis进行模糊查询:查找category_表中包含cat的记录. 使用mybatis进行多条件查询:查找category_表中id>1,包含cat的记录. Part 1 模 ...

  3. MyBatis实现模糊查询的三种方式

    MyBatis实现模糊查询的三种方式 准备 模糊查询 方式一 方式二 方式三 由于#{}是占位符本身,自带单引号,所以在模糊查询时需要一些技巧. 准备 数据库表 bean 模糊查询 以查询出所有用户名 ...

  4. Mybatis学习记录(四)——Mybatis实现模糊查询的三种方法

    2018.4.8 仅为个人理解 不足之处欢迎指正~ 数据库说明: 我们在之前的数据库中添加三列:sex major class 现有如下记录: Mybatis进行模糊查询: Mybatis进行模糊查询 ...

  5. MyBatis:模糊查询的4种实现方式

    1.根据姓名模糊查询员工信息 1.1.方式一 步骤一:编写配置文件 步骤二:测试 步骤三:分析 此种方式需要在调用处手动的去添加"%"通配符. 1.2.方式二 说明: 使用方式一可 ...

  6. Mybatis的模糊查询写法

    所需的maven依赖 <dependencies><!-- Mybatis核心 --><dependency><groupId>org.mybatis& ...

  7. MyBatis Plus 模糊查询报错, 但是不影响返回结果[解决]

    1 现状 模糊查询报错, 但不影响查询结果 2 报错信息 optimize this sql to a count sql has exception, sql:xxxxxxxxxxxxxxxxxxx ...

  8. MyBatis中模糊查询LIKE的三种方式

    在操作数据库时,查询是最常用的语句,模糊查询也是数据库SQL中使用频率很高的SQL语句,利用MyBatis框架来进行更加灵活的模糊查询,有如下三种方式: (1)直接传参法        直接传参法,就 ...

  9. Mybatis中模糊查询的各种写法(转)

    为什么80%的码农都做不了架构师?>>>    模糊查询: 工作中用到,写三种用法吧,第四种为大小写匹配查询 1. sql中字符串拼接 SELECT * FROM tableName ...

最新文章

  1. lettuce--Advanced Redis client
  2. 在Centos上编译安装nginx
  3. 工作这几年,同事对我的称呼肉眼可见的在变化着......
  4. zookeeper分布式锁原理及实现
  5. java enumset_Java EnumSet工作原理初窥
  6. 澳大利亚短租市场火爆 “祖母房”成为热搜
  7. webview session不失效_不懂HttpSession对象看这里--乐字节
  8. 毕啸南专栏 | 对话李开复:AI科学家的转型之路
  9. [原创]FineUI秘密花园(二十六) — 选项卡控件概述
  10. 修改配置nginx,限制无良爬虫频率
  11. Linux 录屏及制作GIF
  12. vue H5 唤醒app
  13. 【STM32F407开发板用户手册】第14章 STM32F407的电源,复位和时钟系统
  14. Windows 10聚焦怎么用?教你玩转Windows聚焦功能
  15. dev、test、prod、pre是什么意思?
  16. C++:Trivial、Standard-Layout 和 POD
  17. HDU 5269 ZYB loves Xor I
  18. Python量化交易平台开发教程系列1-类CTP交易API的工作原理
  19. Pandas熊猫框架
  20. Maven项目右边依赖好多红色波浪线处理办法

热门文章

  1. formidable中间件的使用
  2. 法国大面包 mimikatz使用方法
  3. 天鸟技术中台-建设过程-日常经验3:权限控制的进一步思考和细化
  4. 什么是亚马逊关联?亚马逊关联应该如何防范
  5. 【Vue】前端人脸识别框架 tracking.js 活体检测/拍照在 vue2 的使用
  6. 解决easyexcel填充图片后合并单元格没有占满的问题
  7. 41、secureCRT乱码与配置
  8. 安装IIS不能运行ASP 不能打开ASP文件
  9. 主机屋对php没反应,主机按了开机键没反应
  10. 【以太坊】如何获取内部交易