当前位置: 首页 > 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>

相关文章:

  • 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
  • 五大光伏龙头一季度亏损超80亿元,行业冬天难言结束
  • 金砖国家外长会晤落幕,外交部:发出了反对单边霸凌行径的“金砖声音”
  • 铺就长三角南北“交通动脉”,乍嘉苏改高速扩建项目首桩入位
  • 中国海油总裁:低油价短期影响利润,但也催生资产并购机会
  • “ChatGPT严选”横空出世了,“DeepSeek严选”还要等多久?
  • 俄罗斯纪念卫国战争胜利80周年阅兵式首次彩排在莫斯科举行