当前位置: 首页 > news >正文

MyBatis之Like模糊查询的两种实现方式

MyBatis之Like模糊查询的两种方式

文章目录

  • MyBatis之Like模糊查询的两种方式
  • 1. Mybatis中Like模糊查询
    • 1. 传递参数值时直接拼接%%
    • 2. Mapper.xml中绑定标签

1. Mybatis中Like模糊查询

有两种方式:

  1. 在Java代码中传递参数值时直接拼接 %%
  2. mapper.xml中利用数据库内置拼接函数实现(注意不同的数据库拼接方式不同)
  3. 以下案例中使用的是Oracle数据库

1. 传递参数值时直接拼接%%

  1. java中
Map map = new HashMap(3);
map.put("userOrgId","%"+userOrgId+"%");
map.put("userName","%"+userName+"%");
map.put("userRealName","%"+userRealName+"%");
  1. Mappper.xml中
<if test="userOrgId != null">
    and  depart_ids LIKE #{userOrgId}
</if>
<if test="userName != null">
    and username LIKE #{userName}
</if>
<if test="userRealName != null">
    and realname LIKE #{userRealName}
</if>

2. Mapper.xml中绑定标签

  1. java中
Map map = new HashMap(3);
map.put("userOrgId",userOrgId);
map.put("userName",userName);
map.put("userRealName",userRealName);
  1. Mappper.xml中
<if test="userOrgId != null">
    and  depart_ids LIKE CONCAT(CONCAT('%',#{userOrgId}),'%')
</if>
<if test="userName != null">
    and username LIKE CONCAT(CONCAT('%',#{userName}),'%')
</if>
<if test="userRealName != null">
    and realname LIKE CONCAT(CONCAT('%',#{userRealName}),'%')
</if>
http://www.dtcms.com/a/8332.html

相关文章:

  • A股上市以来涨幅排行榜
  • 2024刘谦春晚第二个扑克牌魔术
  • [Python进阶] 识别验证码
  • tkinter-TinUI-xml实战(10)展示画廊
  • 第三百一十回
  • JUnit实践教程——Java的单元测试框架
  • c语言贪食蛇游戏
  • python Flask与微信小程序 统计管理
  • 【Linux学习】生产者-消费者模型
  • 【FPGA】VHDL:八段码到8421BCD码转换电路
  • idea:如何连接数据库
  • Nacos 的配置管理和配置热更新
  • 鸿蒙内核框架
  • Cohere For AI 推出了 Aya,这是一款覆盖超过 100 种语言的大型语言模型(LLM)
  • MATLAB实现朴素贝叶斯分类
  • Mysql报错:too many connections
  • PyTorch detach():深入解析与实战应用
  • Javaweb之SpringBootWeb案例之AOP概述及入门的详细解析
  • 双非本科准备秋招(19.2)—— 设计模式之保护式暂停
  • 每日一个脚本之一键部署Docker
  • 一、DataX简介
  • MCU+SFU视频会议一体化,视频监控,指挥调度(AR远程协助)媒体中心解决方案。
  • C/C++内存管理:new、delete功能及原理实现
  • redis-sentinel(哨兵模式)
  • Tkinter教程21:Listbox列表框+OptionMenu选项菜单+Combobox下拉列表框控件的使用+绑定事件
  • Redis持久化、主从与哨兵架构详解
  • C++入门
  • 嵌入式硬件工程师与嵌入式软件工程师
  • pycharm像jupyter一样在控制台查看后台变量
  • npm 下载报错